我已經使用「select」關鍵字和擴展方法返回一個帶有LINQ的IEnumerable<T>
,但我需要返回一個通用的Dictionary<T1, T2>
,但無法弄清楚。我從以下類似的東西中學到了這個例子:選擇字典<T1, T2> with LINQ
IEnumerable<T> coll = from x in y
select new SomeClass{ prop1 = value1, prop2 = value2 };
我也對擴展方法做了同樣的事情。我認爲,因爲Dictionary<T1, T2>
中的項可以迭代爲KeyValuePair<T1, T2>
,所以我可以用上述示例中的「SomeClass」替換爲「new KeyValuePair<T1, T2> { ...
」,但這樣做不起作用(Key和Value被標記爲只讀,所以我不能編譯這段代碼)。
這是可能的,還是我需要在多個步驟中做到這一點?
謝謝。
+1 Whuh。這爲我創建新數據對象的方式開闢了新的可能性。 – Sung 2009-03-06 01:12:46
太棒了,很高興你能夠使用它,我知道它在某些情況下幫助了我。 – 2009-03-06 01:28:40