读书人

linq to xml xml文档中节点不是成对的

发布时间: 2011-12-17 23:37:33 作者: rapoo

linq to xml xml文档中节点不是成对的问题

XML code
<?xml version="1.0" encoding="utf-8"?><root return="0" info="成功" msgid="F830DBA1777415B9" numbers="1" messages="1"/>


上面是我获取到的xml,但是不是如下形式<root></root>,我写了如下代码 报错出现非法字符,linq to xml难道只能读取成对节点的xml字符串吗?

[解决办法]
如果文档不符合XML标准,改用传统的SelectSingleNode试试
[解决办法]
C# code
void Main(){    string str = @"<?xml version=""1.0"" encoding=""utf-8""?><root return=""0"" info=""成功"" msgid=""F830DBA1777415B9"" numbers=""1"" messages=""1""/>";  var data=XDocument.Parse(str);  var query=from x in data.Descendants("root")               select  new            {                x.Attribute("msgid").Value             };       Console.WriteLine(query.First().Value);  //F830DBA1777415B9 }
[解决办法]
C# code
//用LOAD也木有发现有什么问题void Main(){      var data=XDocument.Load("C:\\test.xml");  var query=from x in data.Descendants("root")               select  new            {                x.Attribute("msgid").Value             };       Console.WriteLine(query.First().Value);  //F830DBA1777415B9 } 

读书人网 >.NET

热点推荐