5

私は次のようなXMLを持っています:

<?xml version="1.0" encoding="utf-16"?>
<RootNodeName xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xmlns:xsd="http://www.w3.org/2001/XMLSchema" MyAttribute="7" xmlns="mylink">
  <IsValid>false</IsValid>
  <Name>some matrix</Name>
  ...Some more nodes...
</RootNodeName>

次のようなコード:

var doc = XDocument.Parse(myXmlString);
Console.WriteLine(doc.Root.Element("Name"));

そしてコンソールは=(をdoc.Root.Element("Name")返すのでただ空のスペースを示しますnull

結果の中からこの要素を見つけることができますがdoc.Root.Elements()doc.Root.Attribute("MyAttribute")同様に正しい結果が得られます。

it / meの何が問題になっていますか?

4

1 に答える 1

12

<Name>要素は名前mylink空間にあります:

XNamespace mylink = "mylink";

Console.WriteLine(doc.Root.Element(mylink + "Name"));
于 2012-11-15T17:10:46.477 に答える