У меня похожий сценарий:
public class TestLinq2Xml
{
private XElement GenerateSomeXml()
{
return XElement.Parse(@"<MyObject>
<Properties>
<Name>My object 1</Name>
<Position>0; 0; 0</Position>
</Properties>
</MyObject>");
}
public void ExploreXmlNode()
{
var xmlTree = this.GenerateSomeXml();
var name = xmlTree.Element("MyObject").Element("Properties").Element("Name").Value;
Console.WriteLine(name);
}
}
Хорошо, это очень упрощено. .... но это все еще не будет работать. Есть идеи, что я тут делаю не так?
Edit:
О, почти забыл. Проблема в том, что xmlTree.Element("MyObject")
возвращает пустую последовательность linq. Хотя у меня явно есть узел с именем «MyObject».