考虑到网站首页使用动态页面的话会影响服务器性能,所以采用javascript来实现首页的动态更新。
原理,以发新闻稿为例,当后台发出一条新闻后,通过访问数据库动态生成一个XML文件,保存新闻的信息,当打开前台页面时,使用javascript读取XML文件并显示。
后台代码:
sseEntities _db = new sseEntities();
var newsToView = (from n in _db.News select n).ToArray().Reverse().ToList();
XmlDocument xd = new XmlDocument();
XmlDeclaration xde;
xde = xd.CreateXmlDeclaration("1.0", "GBK", null);
xd.AppendChild(xde);
XmlElement newslist = xd.CreateElement("newslist");
xd.AppendChild(newslist);
XmlNode root = xd.SelectSingleNode("newslist");
XmlElement [] news = new XmlElement [4];
XmlElement [] text = new XmlElement [4];
XmlElement [] img = new XmlElement[4];
for (int i = 0; i < 4; i++)
{
news[i] = xd.CreateElement("news");
text[i] = xd.CreateElement("text");
img[i] = xd.CreateElement("img");
news[i].SetAttribute("id", i.ToString());
if (i < newsToView.Count)
{
text[i].InnerText = newsToView[i].Title;
img[i].InnerText = "Content/newsimages/slider_item1.png";
}
else
{
text[i].InnerText = "";
img[i].InnerText = "";
}
news[i].AppendChild(text[i]);
news[i].AppendChild(img[i]);
root.AppendChild(news[i]);
}
xd.Save(Server.MapPath("../Sources/News.xml"));
前台读取代码:
<script type="text/javascript">
function loadXML(xmlFile) {
var xmlDoc;
if (!window.ActiveXObject) {
var parser = new DOMParser();
xmlDoc = parser.parseFromString(xmlFile, "text/xml");
} else {
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = "false";
xmlDoc.load(xmlFile);
}
return xmlDoc;
}
var xmlDoc = loadXML("Sources/News.xml");
//解析xml文件,判断是否出错
if (xmlDoc.parseError.errorCode != 0) {
alert(xmlDoc.parseError.reason);
}
//获得根节点
var nodes = xmlDoc.documentElement.childNodes;
</script>
<div id="newsbody">
<div id="slider">
<div class="sliderItem" id="slide1">
<script type="text/javascript">
document.write("<h3>" + nodes(0).firstChild.nodeTypedValue + "</h3>");
document.write("<img src='" + nodes(0).lastChild.nodeTypedValue + "' alt='' />")
</script>
</div>
<!-- /sliderItem -->
<div class="sliderItem" id="slide2" style="display: none">
<script type="text/javascript">
document.write("<h3>" + nodes(1).firstChild.nodeTypedValue + "</h3>");
document.write("<img src='" + nodes(1).lastChild.nodeTypedValue + "' alt='' />")
</script>
</div>
<!-- /sliderItem -->
<div class="sliderItem" id="slide3" style="display: none">
<script type="text/javascript">
document.write("<h3>" + nodes(2).firstChild.nodeTypedValue + "</h3>");
document.write("<img src='" + nodes(2).lastChild.nodeTypedValue + "' alt='' />")
</script>
</div>
<!-- /sliderItem -->
<div class="sliderItem" id="slide4" style="display: none">
<script type="text/javascript">
document.write("<h3>" + nodes(3).firstChild.nodeTypedValue + "</h3>");
document.write("<img src='" + nodes(3).lastChild.nodeTypedValue + "' alt='' />")
</script>
</div>
</div>
<div id="sliderNav">
<a href="#" class="previous">Previous</a>
<ul>
</ul>
<a href="#" class="next">Next</a>
</div>
</div>
分享到:
相关推荐
在本文中,我们将深入探讨如何使用C#编程语言来获取XML文件的信息,并将这些信息有效地呈现在Web界面上。XML(可扩展标记语言)是一种结构化的数据存储格式,广泛用于数据交换和配置文件。C#作为.NET框架的一部分,...
结合以上知识点,你可以创建一个C#应用程序,从JSON配置文件读取PDF生成的相关参数,如页面大小、字体样式等,然后使用iTextSharp或其他库生成PDF。同时,程序可以支持动态更新配置,以适应不同的PDF生成需求。 ...
- 通过C#代码解析这些XML文件,并使用JavaScript和CSS生成客户端的动态效果。 6. **客户端与服务器端交互**: - 服务器端通过ASP.NET文件`createMenus.aspx`处理XML数据,并将其转换为客户端可理解的格式。 - ...
1. **读取XML数据**:使用C#的System.Xml命名空间中的类,如XmlDocument或XDocument,加载XML文件并解析其内容。 2. **构建TreeView**:根据解析的XML数据,动态生成TreeView的节点。每个XML节点对应TreeView的一个...
这里我们关注的是如何使用POST方法调用一个WebService,并处理返回的XML响应。我们将探讨以下知识点: 1. **WebService**:WebService是一种基于HTTP协议的分布式计算模型,允许不同系统间的应用进行交互。它通常...
在ASP.NET中,可以使用C#代码动态生成XML字符串,然后将其传递给客户端。客户端的JavaScript可以读取这些XML数据,并根据需要对数据进行操作。 接着,我们来讨论AJAX(Asynchronous JavaScript and XML)删除操作。...
在C#中,我们可以使用`System.Xml`命名空间的类来读取XML。如`XmlDocument`和`XmlNodeReader`: ```csharp using System.Xml; public class ReadXml { public static void Main() { XmlDocument doc = new Xml...
在.NET编程环境中,C#是一种常用的编程语言,而JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)是两种广泛使用的数据交换格式。本文将深入探讨如何在C#中实现JSON与XML的相互转换,以满足...
- C#:System.Xml命名空间下的XmlDocument、XmlNodeReader等。 - JavaScript:DOMParser或XMLHttpRequest对象进行AJAX请求后使用原生DOM接口。 4. **XML命名空间**: 为了避免元素名冲突,XML引入了命名空间的...
C#提供了System.Xml命名空间中的XmlDocument类,用于解析XML文档并创建DOM(Document Object Model)树。通过DOM,你可以添加、删除、修改XML节点。例如: ```csharp XmlDocument doc = new XmlDocument(); doc....
- 在C#中,可以使用`System.Xml.Serialization`命名空间中的类(如`XmlSerializer`)将对象序列化为XML,也可以使用`System.Text.Json`或第三方库如Newtonsoft.Json将对象转换为JSON。 - 序列化过程是将对象的状态...
在C#或ASP.NET中,我们可以使用`System.Xml`命名空间的类,如`XmlDocument`或`XDocument`来读取、修改XML文件。例如,加载XML文件: ```csharp XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("path_to_...
Ajax 的工作原理是使用 XHTML 和 CSS 标准化呈现,使用 DOM 实现动态显示和交互,使用 XML 和 XSLT 进行数据交换与处理,使用 XMLHttpRequest 进行异步数据读取,最后用 JavaScript 绑定和处理所有数据。 在 C#.net...
- 在C#中,我们可以使用`System.Xml`命名空间的类来读取和解析XML文件。`XmlDocument`或`XDocument`类是常用的工具,它们允许我们加载XML文件并检索特定的节点。 - 创建一个辅助类来处理XML语言资源,如`...
在C#中调用这些API通常需要使用HttpClient类来发起HTTP请求,并处理返回的JSON或XML数据。例如,要获取地图上的标注信息,可以调用百度地图的 marker 接口,通过POST请求发送数据,数据中包含标注的坐标、标题、描述...
压缩包内的"生成波形图.pdf"可能是使用XML数据生成的波形图示例,供参考和比对。这个PDF文件可以用来验证你的代码是否正确解析和可视化了XML数据。通过对比实际的心电图波形图,你可以检查数据的准确性,同时也可以...
在ASP.NET中,我们可以使用内置的System.Xml命名空间来读取、写入和操作XML文档。以下是一些关键的类和方法: 1. **XmlDocument**: 这是处理XML的主要类,可以加载XML文件,创建节点,以及执行查询。例如,你可以...
在ASP.NET框架下,C#代码被用来编写服务器端逻辑,处理用户请求,生成动态内容,并与数据库进行交互。 Ajax的核心在于JavaScript,它负责在客户端与服务器之间建立异步通信。在这个项目中,JavaScript代码通常会...
4. **ASP.NET集成**:ASP.NET可以通过C#或VB.NET等编程语言,提供动态生成XML文件的能力。这样,当数据库中的图片信息发生变化时,可以通过ASP.NET自动更新XML,保持图片轮换内容的实时性。 5. **前端与后端交互**...
XMLReaderDemo是一个基于C#语言的XML文档解析示例,主要展示了如何逐节点地读取和解析XML文档,以及如何将解析的关键数据转换为JSON格式。在这个DEMO中,我们将探讨XML解析的基本概念,C#中的XMLReader类,以及XML到...