LINQ到实体复制记录问题
问题描述:
我在此查询获得重复数据: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。我对这一切都很陌生,不确定为什么我要获取重复的图像记录。
任何人都可以帮忙吗?
谢谢!
答
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();
答
我觉得Entity Key
您PublisherImage
实体没有设置正确的模型。 Entity Key
必须使您的实体独特
只需添加.Distinct()befor .ToList(); – 2012-03-30 13:56:40
我之前尝试过,因为某些原因,它根本不起作用。 – Jared 2012-03-30 14:01:49
PublisherImage的实际类型是什么? 我的意思是例如学生有这样的领域: - 名称 - 年龄 - 主要 等等 – 2012-03-30 14:03:14