これは辞書です:
Dictionary<string, List<string>> Dic = new Dictionary<string, List<string>>();
次のことをしたい: ボタンをクリックすると、最初の辞書 (Dic) キーとその値がリスト ( List<string>
) にコピーされます。もう一度クリックすると、同じことが起こりますが、今度は次のディクショナリ キーと値を使用します。
これは辞書です:
Dictionary<string, List<string>> Dic = new Dictionary<string, List<string>>();
次のことをしたい: ボタンをクリックすると、最初の辞書 (Dic) キーとその値がリスト ( List<string>
) にコピーされます。もう一度クリックすると、同じことが起こりますが、今度は次のディクショナリ キーと値を使用します。
List<string>
辞書のリスト値のすべての文字列要素に基づいて新しいを作成したいようです。SelectMany
次のコードを使用して、フラット化してリストを取得するために使用できます。
Dictionary<string, List<string>> Dic = new Dictionary<string, List<string>>();
Dic.Add("1", new List<string>{"ABC","DEF","GHI"});
Dic.Add("2", new List<string>{"JKL","MNO","PQR"});
Dic.Add("3", new List<string>{"STU","VWX","YZ"});
List<string> strList = Dic.SelectMany(r => r.Value).ToList();
WherestrList
には、ディクショナリのすべての文字列項目が 1 つのリストに含まれます。
なぜToList
メソッドを使用しないのですか?
Dictionary<string, int> dictionary = new Dictionary<string, int>();
dictionary["cat"] = 1;
dictionary["dog"] = 4;
dictionary["mouse"] = 2;
dictionary["rabbit"] = -1;
// Call ToList.
List<KeyValuePair<string, int>> list = dictionary.ToList();
// Loop over list.
foreach (KeyValuePair<string, int> pair in list)
{
Console.WriteLine(pair.Key);
Console.WriteLine(" {0}", pair.Value);
}