C# ASP.NET Datalist绑定xml数据问题 想实现在两个datalist中分别显示时事新闻和环球经济中内容
//下面是XML文件<?xmlversion="1.0"encoding="UTF-8"?><News><时事新闻><IDName="1"><Num>5</Num><Ti...
//下面是XML文件
<?xml version="1.0" encoding="UTF-8"?>
<News>
<时事新闻>
<ID Name="1">
<Num>5</Num>
<Title>世界杯西班牙回家</Title>
<Content>卫冕冠军小组赛遭淘汰</Content>
<Type>世界杯要闻</Type>
<IssueDate>2014-6-7 18:33:09</IssueDate>
</ID>
<ID Name="2">
<Num>6</Num>
<Title>美军政府赤字12000亿</Title>
<Content>哈哈哈哈哈,美国挂了,你说呢,哈哈哈哈哈哈哈哈</Content>
<Type>国际新闻</Type>
<IssueDate>2019-11-17 14:33:09</IssueDate>
</ID>
</时事新闻>
<环球经济>
<ID Name="5">
<Num>5</Num>
<Title>创业版本月23日开版</Title>
<Content>新浪消息,他到底是谁</Content>
<Type>国内新闻</Type>
<IssueDate>2009-10-17 13:33:09</IssueDate>
</ID>
<ID Name="6">
<Num>6</Num>
<Title>美联储申明他到底是谁</Title>
<Content>哈哈哈哈哈,美国挂了</Content>
<Type>国际新闻</Type>
<IssueDate>2009-11-17 14:33:09</IssueDate>
</ID>
</环球经济>
</News>
//但是自己做的不显示
//下面是Page_Load代码,使网页在显示时能绑定xml文件并显示
//不好意思,没分了啊,谢谢帮助
字数多了,不好意思 展开
<?xml version="1.0" encoding="UTF-8"?>
<News>
<时事新闻>
<ID Name="1">
<Num>5</Num>
<Title>世界杯西班牙回家</Title>
<Content>卫冕冠军小组赛遭淘汰</Content>
<Type>世界杯要闻</Type>
<IssueDate>2014-6-7 18:33:09</IssueDate>
</ID>
<ID Name="2">
<Num>6</Num>
<Title>美军政府赤字12000亿</Title>
<Content>哈哈哈哈哈,美国挂了,你说呢,哈哈哈哈哈哈哈哈</Content>
<Type>国际新闻</Type>
<IssueDate>2019-11-17 14:33:09</IssueDate>
</ID>
</时事新闻>
<环球经济>
<ID Name="5">
<Num>5</Num>
<Title>创业版本月23日开版</Title>
<Content>新浪消息,他到底是谁</Content>
<Type>国内新闻</Type>
<IssueDate>2009-10-17 13:33:09</IssueDate>
</ID>
<ID Name="6">
<Num>6</Num>
<Title>美联储申明他到底是谁</Title>
<Content>哈哈哈哈哈,美国挂了</Content>
<Type>国际新闻</Type>
<IssueDate>2009-11-17 14:33:09</IssueDate>
</ID>
</环球经济>
</News>
//但是自己做的不显示
//下面是Page_Load代码,使网页在显示时能绑定xml文件并显示
//不好意思,没分了啊,谢谢帮助
字数多了,不好意思 展开
1个回答
展开全部
using System.Xml.Linq;
XElement element = XElement.Load(@"d:\text.xml");
XElement news = element.Element("时事新闻");
var newsQuery = from c in news.Elements("ID")
select new
{
ID = c.Attribute("Name").Value,
Num = c.Element("Num").Value,
Title = c.Element("Title").Value,
Content = c.Element("Content").Value,
DataType = c.Element("Type").Value,
IssueDate = c.Element("IssueDate").Value
};
foreach (var item in newsQuery)
{
Console.WriteLine("属性:Num,值:{0}", item.Num);
}
XElement economy = element.Element("环球经济");
var economyQuery = from c in news.Elements("ID")
select new
{
ID = c.Attribute("Name").Value,
Num = c.Element("Num").Value,
Title = c.Element("Title").Value,
Content = c.Element("Content").Value,
DataType = c.Element("Type").Value,
IssueDate = c.Element("IssueDate").Value
};
foreach (var item in newsQuery)
{
Console.WriteLine("属性:Num,值:{0}", item.Num);
}
除了嵌入式开发只能用XmlDocument,其它的情况下,建议使用linq to xml 或者XmlSerializer
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询