Linq 使用XDocument类读取xml数据
我有一个xml文件,比如(test.xml) 听起来你想要:Linq 使用XDocument类读取xml数据,linq,c#-3.0,linq-to-xml,Linq,C# 3.0,Linq To Xml,我有一个xml文件,比如(test.xml) 听起来你想要: string name = "String1"; // Or whatever var query = from data in doc.Descendants("data") where (string) data.Attribute("name") == name select (string) data.Element("value"); string description =
string name = "String1"; // Or whatever
var query = from data in doc.Descendants("data")
where (string) data.Attribute("name") == name
select (string) data.Element("value");
string description = query.First(); // Or FirstOrDefault etc
如果没有一个结果,你应该考虑你想发生的事情。这是一种错误状态(如果是,请使用Single()
),是否应该使用所有结果(如果是,只需迭代query
),是否应该使用第一个结果(如果是可用的),是否忽略它(如果是,请使用FirstOrDefault()
,并检查结果是否为空),是否应该使用第一个结果,如果没有任何错误(如果有,请使用First()
)
XDocument doc = XDocument.Load(@"D:\test.xml");
string search = "String10";
var lv1s = from lv1 in doc.Descendants("data")
select lv1.Name;
string name = "String1"; // Or whatever
var query = from data in doc.Descendants("data")
where (string) data.Attribute("name") == name
select (string) data.Element("value");
string description = query.First(); // Or FirstOrDefault etc