web-dev-qa-db-ja.com

2つの辞書を連結する

いくつかの辞書を考える

Dictionary<string, string> GroupNames = new Dictionary<string, string>();
Dictionary<string, string> AddedGroupNames = new Dictionary<string, string>();

それらを1つにマージすることはできません。

GroupNames = GroupNames.Concat(AddedGroupNames);

「型は暗黙的に変換できない」ためです。私はそのタイプが同じであると信じています(そして私のコードは私を証明しています)-私は何を見落としていますか?

40
Alexander

GroupNamesDictionary<string,string>として定義したと思うので、次のようにToDictionaryを追加する必要があります。

GroupNames = GroupNames.Concat(AddedGroupNames)
                       .ToDictionary(x=>x.Key,x=>x.Value);

2つの元の辞書には異なるキーがあることに注意してください。そうでない場合は、それらを正しくマージするためのルールが必要です。

82
King King