在获取多列数据时在列上使用distinct

时间:2014-10-23 06:29:12

标签: linq entity-framework entity-framework-6

我的数据库表结构:

Schema  Property  Type

对于不同的'Schema'值,我有相同的'Property'和'Type'值。

我的linq查询:

IEnumerable<CModel> model = db.dbModels.AsEnumerable().Select(o => new CModel { CName = "XXX", PName = o.Property, PType = o.Type }).Distinct().ToList();

我要做的是获取不同的“属性”和“类型”值,但查询给出了重复值。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以将它们分组:

IEnumerable<CModel> model = db.dbModels.AsEnumerable()
                            .GroupBy(x => new { x.Property, x.Type })
                            .Select(x => new CModel 
                                        { CName = "XXX", 
                                          PName = x.Property, 
                                          PType = x.Type }).ToList();