に値でのXElementを取得する方法をXMLに:LINQのは、私は、XMLを持っているのC#
XElement xDoc = XElement.Load("File.xml");
var x= xDoc.Descendants("Field").Where(elem => elem.Value == "DEMOFIELD");//returns no element
これは戻っていないもの:
<?xml version="1.0" encoding="utf-8"?>
<Fields>
<Field>
<Name>DEMOFIELD</Name>
<Category>HardwareSoftwareRequirement</Category>
</Field>
</Fields>
私はこれを行う
。私が代わりにこれを行うときには:反復でvar x= xDoc.Descendants("Field").Where(elem => elem.Value.Contains("DEMOFIELD"));//returns no element
、代わりのe.Value
を、それが返されます。DEMOFIELDHardwareSoftwareRequirement
、それだけでDEMOFIELD
をすることはできませんか?その後、
、あなたが右の要素の値を比較していることを確認する必要があります値、
foreach(XElement e in x)
{
_log.Debug(e.Value);//no value here
}
ありがとう@Alexei ...これは私が実際に逃したものです: - フィールドの代わりに名前で選択 – osagie