2011-05-17 33 views
1

我有一個表在數據庫如下...從LINQ查詢創建一個字典<INT,列表<int>>

ID(INT) Values(VARCHAR(50)) 
1   200,300 
2   100 
3   400,500 

,當我詢問,我需要在一個字典>

這個數據

代碼我迄今...

var x = (from o in Values select o).ToDictionary(o=>o.ID, p=>p.Values)

我想p.Values轉換爲一個列表,所以我還需要進行轉換.ToInt32()可能!
任何想法?

回答

7

這應該工作:

var x = 
(from o in Values select o) 
.ToDictionary(o => o.ID, 
       p => p.Values.Split(',') 
        .Select(x => Convert.ToInt32(x)) 
        .ToList()); 

.Select(x => Convert.ToInt32(x))可以轉化爲一個方法組這樣;-) .Select(Convert.ToInt32)

+0

p.Values是逗號分隔的項目的字符串! – Nauman 2011-05-17 07:18:15

+0

@System:對不起,我沒有注意到它...發佈更新;) – digEmAll 2011-05-17 07:23:37

+0

謝謝,這正是我寫了評論給你後,通過使用拆分呼叫實現!標記爲答案! :-) – Nauman 2011-05-17 07:25:26

相關問題