查询实体并返回字典

时间:2014-01-21 14:24:59

标签: c# linq group-by

我正在尝试从数据库中查询视图(实体)并返回字典。视图中有重复项,所以我尝试了groupby,我无法弄明白。

var queryresults = db.MyView.Where(x => x.year == myYear)
                            .GroupBy(g => new { g.myCode, g.myCodeName})
                            .ToDictionary(d => d.myCode, d => d.myCodeName);

1 个答案:

答案 0 :(得分:3)

如果要避免重复键错误,则应按字典键属性进行分组。然后,您可以选择每个组中第一个项目的代码名称作为字典条目值:

var queryresults = 
      db.MyView.Where(x => x.year == myYear)
        .GroupBy(x => x.myCode)
        .ToDictionary(g => g.Key, g => g.First().myCodeName);
相关问题