hansgiller
hansgiller

Reputation: 1051

How to store a collection of Dictionaries?

I need to create a various number of Dictionary<string, string>s in C#; how can I do so?

I've tried using List<Dictionary<string, string>>, but that doesn't work.

Upvotes: 0

Views: 130

Answers (5)

Roy Dictus
Roy Dictus

Reputation: 33139

List<Dictionary<string,string>> does work. Just do it like this:

var d = new List<Dictionary<string,string>>();
var toAdd = new Dictionary<string,string>();
toAdd["Test"] = "Yes";

d.Add(toAdd);

Upvotes: 1

Anwer Ali
Anwer Ali

Reputation: 13

Try,

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

            Dictionary<int,string> b = new Dictionary<int,string>();

            b.Add(1, "Anwer");


            a.Add(b);

            for (int i = 0; i < a.Count; i++)
                foreach (KeyValuePair<int, string> v in a[i])
                    Console.WriteLine(v.Key + " ------ " + v.Value);

Upvotes: 0

FIre Panda
FIre Panda

Reputation: 6637

Try

  List<Dictionary<string, string>> listDic = new List<Dictionary<string, string>>();
  Dictionary<string, string> dic = new Dictionary<string, string>();
  Dictionary<string, string> dic1 = new Dictionary<string, string>();

             dic.Add("key1", "value1");
             dic1.Add("key2", "value2");
             listDic.Add(dic);
             listDic.Add(dic1);

Upvotes: 0

pabdulin
pabdulin

Reputation: 35225

List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
list.Add(new Dictionary<string, string>());
// list[0].Add(...);

Upvotes: 0

Stecya
Stecya

Reputation: 23266

See this example:

List<Dictionary<string,string>> list = new List<Dictionary<string,string>>();
Dictionary<string,string> dict1 = new Dictionary<string,string>();

list.Add(dict1);
list.Add(new Dictionary<string,string>());

Upvotes: 1

Related Questions