2012-03-30 80 views
0

我在此查询获得重复数据:LINQ到实体复制记录问题

var ids = Array.ConvertAll(categoryIds.Split(','), int.Parse); 
List<PublisherImage> images = db.DataModel.PublisherImages.Include("Categories") 
    .Where(pi => pi.Enabled && pi.Rendered && pi.Categories 
     .Any(c => ids.Contains(c.ID))) 
    .OrderByDescending(i => i.OverallScore).ToList(); 

重复的数据是PublisherImages。我对这一切都很陌生,不确定为什么我要获取重复的图像记录。

任何人都可以帮忙吗?

谢谢!

回答

0
var ids = Array.ConvertAll(categoryIds.Split(','), int.Parse); 
List<PublisherImage> images = db.DataModel.PublisherImages.Include("Categories") 
.Where(pi => pi.Enabled && pi.Rendered && pi.Categories 
    .Any(c => ids.Contains(c.ID))) 
.OrderByDescending(i => i.OverallScore).Distinct().ToList(); 
+0

只需添加.Distinct()befor .ToList(); – 2012-03-30 13:56:40

+0

我之前尝试过,因为某些原因,它根本不起作用。 – Jared 2012-03-30 14:01:49

+0

PublisherImage的实际类型是什么? 我的意思是例如学生有这样的领域: - 名称 - 年龄 - 主要 等等 – 2012-03-30 14:03:14

0

我觉得Entity KeyPublisherImage实体没有设置正确的模型。 Entity Key必须使您的实体独特