web-dev-qa-db-fra.com

Concaténer deux dictionnaires

Étant donné certains dictionnaires

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

Je ne peux pas les fusionner en un seul:

GroupNames = GroupNames.Concat(AddedGroupNames);

car "le type ne peut pas être implicitement converti". Je crois (et mon code me prouve vrai) que leur type est le même - qu'est-ce que je néglige?

40
Alexander

Je pense que vous avez défini votre GroupNames comme Dictionary<string,string>, vous devez donc ajouter ToDictionary comme ceci:

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

Notez que 2 dictionnaires originaux auraient des clés différentes, sinon nous avons besoin d'une règle pour les fusionner correctement.

82
King King