Mesclando dicionários em C #
Qual é a melhor maneira de mesclar 2 ou mais dicionários (Dictionary<T1,T2>
) em c #? (Recursos 3.0 como LINQ são bons).
Estou pensando em uma assinatura de método ao longo das linhas de:
public static Dictionary<TKey,TValue>
Merge<TKey,TValue>(Dictionary<TKey,TValue>[] dictionaries);
ou
public static Dictionary<TKey,TValue>
Merge<TKey,TValue>(IEnumerable<Dictionary<TKey,TValue>> dictionaries);
EDITAR: Consegui uma solução legal da JaredPar e Jon Skeet, mas eu estava pensando em algo que lida com chaves duplicadas. Em caso de colisão, não importa qual valor é salvo no ditado, desde que seja consistente.