4

内に XML ドキュメントをロードしましたXmlDocument。ドキュメントは、(クラスXmlReaderによって) 特定のスキーマにバインドされた によってロードされます。XmlReaderSettings

特定のドキュメント ノード要素に許可されている属性のリストを取得するにはどうすればよいですか?

XML は次のようになり、オプションの属性があります。

<row attribute1="1" attribute2="2" attribute3="something">
<row attribute1="3" attribute3="something">
<row attribute2="1" attribute3="something">

リストには、attribute1、attribute2、attribute3 が含まれている必要があります。

ありがとう

4

1 に答える 1

3

私はVS2010を使用しましたが、2.0フレームワークを使用しました。属性の名前を知っているスキーマがあるので、ベースタグを作成したXMLサンプルを試してみました。

XML

<base>
      <row attribute1="1" attribute2="2" attribute3="something"/>
      <row attribute1="3" attribute3="something"/>
      <row attribute2="1" attribute3="something"/>
</base>

CodeBehind

        XmlDocument xml = new XmlDocument();
        xml.Load(@"C:\test.xml");

        List<string> attributes = new List<string>();

        List<XmlNode> nodes = new List<XmlNode>();
        XmlNode node = xml.FirstChild;
        foreach (XmlElement n in node.ChildNodes)
        {
            XmlAttributeCollection atributos = n.Attributes;
            foreach (XmlAttribute at in atributos)
            {
                if(at.LocalName.Contains("attribute"))
                {
                    attributes.Add(at.Value);
                }
            }
        }

すべての属性のリストが表示されます。

于 2013-03-05T13:28:30.623 に答える