创建一个Dictionary <int,list <int =“”>&gt;来自Linq查询</int,>

时间:2011-05-17 07:11:34

标签: c# dictionary linq-to-entities

我在数据库中有一个表如下......

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

当我查询时,我需要在字典&gt;

中获取此数据

到目前为止我的代码是......

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

我希望p.Values转换为List,所以我还需要执行Convert.ToInt32()! 有什么想法吗?

1 个答案:

答案 0 :(得分: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)