-2

こんにちは、この複雑なオブジェクトに値を追加しようとしています。JSON.Net を使用して、このオブジェクトを JSON に変換しようとしています。

Dictionary<string, List<Dictionary<string, int>>> MyList 
    = new Dictionary<string, List<Dictionary<string, int>>>();

最終結果は次のようになります。これ{ "Documents": [ { "Title": , "DatePublished": , "DocumentURL": , "ThumbnailURL": , "Abstract": , "Sector": "", "Country": [ "" ], "Document Type": "" } を試してみましたが、うまくいきませんでした:

MyList["Dictionary"][0].Add("test", 4);
4

4 に答える 4

3

がある場合は、Dictionary<string, int> dictAこれにアイテムを追加できます

Dictionary<string, int> dictA = new Dictionary<string, int>();
dictA.Add("SomeString", 99);

次に、この辞書を使用に追加するには、次をList<Dictionary<string, int>>使用します

List<Dictionary<string, int>> dictList = new List<Dictionary<string, int>>();
dictList.Add(dictA);

Dictionary<string, List<Dictionary<string, int>>> myListこれで、これをオブジェクトに追加できます

Dictionary<string, List<Dictionary<string, int>>> myList = 
    new Dictionary<string, List<Dictionary<string, int>>>();
myList.Add("SomeString", dictList);

これが役立つことを願っています。

于 2013-04-08T14:45:14.347 に答える
2

Dictionary.Add価値のあるものとして、使用方法とCollection Initalizerを示すサンプルループを次に示します。

Dictionary<string, List<Dictionary<string, int>>> MyList = 
    new Dictionary<string, List<Dictionary<string, int>>>();

foreach (int i in Enumerable.Range(1, 100))
{
    var list = new List<Dictionary<string, int>>();
    foreach (int ii in Enumerable.Range(1, 100))
        list.Add(new Dictionary<string, int>() { { "Item " + ii, ii } });
    MyList.Add("Item " + i, list);
}
于 2013-04-08T14:43:00.083 に答える
1
MyList.Add("key1", new List<Dictionary<string, int>());
MyList["key1"].Add(new Dictionary<String, int>());

恐れ入りますが、それ以上の情報を提供するには、あなたからの詳細情報が必要です。

于 2013-04-08T14:42:30.057 に答える
1

複雑に見えますが、実際には非常に単純です。

あなたの辞書は のキーstringと の値を取りますList<Dictionary<string, int>>。したがって、を追加するには、その値は常に型でなければなりませんList<Dictionary<string, int>>

于 2013-04-08T14:43:12.433 に答える