1

すべての子 XElements を含む HybridDictionary を取得します。
そこにいくつのアイテムがあるか、先のことはわかりません。
したがって、これを行う代わりに:

xmlDoc.Element("Parent").Add(
     new XElement("Child", new XAttribute("Name", "Child1"),
           new XElement("Id", "796"),
           new XElement("Name", "gdsa")
           etc..
      ));  

私はそのようなことをしようとしています:

Strung [] allKeys = new String[ChildElements.Count];
TheHybridDictionary.Keys.CopyTo(allKeys, 0);

xmlDoc.Element("Parent").Add(
      new XElement("Child", new XAttribute("Name", "Child1"),
            for (int i = 0; i < TheHybridDictionary.Count; i++)
                   new XElement(allKeys[i], TheHybridDictionary[allKeys[i]])

しかし、for ループの内部にあるものを XML 文書作成の一部として接続するにはどうすればよいでしょうか?

4

2 に答える 2

1

問題は、HybridDictionaryクラスが を実装していないためIEnumerable、LINQ を直接使用できないことです。

allKeysただし、代わりに文字列配列を使用できます。

string [] allKeys = new String[ChildElements.Count];
TheHybridDictionary.Keys.CopyTo(allKeys, 0);

xmlDoc.Element("Parent").Add(
    new XElement("Child", new XAttribute("Name", "Child1"),
        allKeys.Select(x => new XElement(x, TheHybridDictionary[x])))
于 2013-09-10T17:47:21.940 に答える