Jak zmienić zawartość IDictionary przy użyciu C# 3.0 (Linq, rozszerzenia Linq)?Jak zmienić zawartość IDictionary za pomocą LINQ (C# 3.0)
var enumerable = new int [] { 1, 2};
var dictionary = enumerable.ToDictionary(a=>a,a=>0);
//some code
//now I want to change all values to 1 without recreating the dictionary
//how it is done?
W zasadzie nigdy nie użyłbym pierwszego fragmentu kodu w rzeczywistości. Metoda rozszerzenia może być świetna, ale ponieważ nie można jej przypisać do wartości, słowniki nie pozwalają na wiele. –
Nie tak jasne * i * mniej wydajne (tworzy sklonowaną listę kluczy i wykonuje 2 iteracje zamiast 1) ... zwycięzca! –