我正在尝试从数据库中查询视图(实体)并返回字典。视图中有重复项,所以我尝试了groupby,我无法弄明白。
var queryresults = db.MyView.Where(x => x.year == myYear)
.GroupBy(g => new { g.myCode, g.myCodeName})
.ToDictionary(d => d.myCode, d => d.myCodeName);
答案 0 :(得分:3)
如果要避免重复键错误,则应按字典键属性进行分组。然后,您可以选择每个组中第一个项目的代码名称作为字典条目值:
var queryresults =
db.MyView.Where(x => x.year == myYear)
.GroupBy(x => x.myCode)
.ToDictionary(g => g.Key, g => g.First().myCodeName);