C# 将解析的XML与字符串进行比较
我正在开发一个web服务,它将接收XML字符串并与internalName字符串进行比较。我使用LINQ解析XML(我认为我做得很正确),但我不确定如何将“值”与InternalName进行比较C# 将解析的XML与字符串进行比较,c#,xml,linq,parsing,linq-to-xml,C#,Xml,Linq,Parsing,Linq To Xml,我正在开发一个web服务,它将接收XML字符串并与internalName字符串进行比较。我使用LINQ解析XML(我认为我做得很正确),但我不确定如何将“值”与InternalName进行比较 [WebMethod] public string WMCompare (string xml, string internalName) { XDocument xmlDoc = XDocument.Load(xml); var result
[WebMethod]
public string WMCompare (string xml, string internalName)
{
XDocument xmlDoc = XDocument.Load(xml);
var result = from ele in xmlDoc.Descendants("property")
select new
{
key = (string)ele.Element("key"),
value = (string)ele.Element("value")
};
foreach (var i in result)
{
}
}
}
谢谢你的关注,对于这个新手问题我很抱歉。这是我第一次使用XML。考虑到您正在比较字符串和值:
var newResult = result.Where(r => r.value.Equals(internalName))
或者,您也可以在解析XML时进行比较:
var result1 = from ele in doc.Descendants("property")
where ele.HasElements && ele.Element("value") != null && ele.Element("value").Equals(internalName)
select new
{
key = (string)ele.Element("key"),
value = (string)ele.Element("value")
};
创建绑定xml的模型是否具有挑战性?然后,您可以将XML反序列化到对象中,并轻松访问其所有属性。您希望将哪个节点/属性值与“internalName”进行比较?是“关键”还是“价值”?