我有一个来自数据库上下文的linq,看起来像这样
var linq = from a in TableDataset
select a;
其中:
public IEnumerable<TableView1> TableDataset
{
return this.context.Set<TableView1>();
}
我希望有两个记录,而我得到了两个记录但是记录1和2的值是相同的。我尝试使用TableView1在sql db中直接查询,并且在那里看到了预期的值。任何线索为什么会这样?
如果数据库表包含唯一记录,那时候很容易通过使用DISTINCT选择唯一记录,但是当.NET DataTable包含重复记录时,那时候没有内置函数可以删除或从数据表中选择唯一记录。
我们可以将Distinct()与特殊的IEqualityComparer一起使用,以将具有相同字段的所有对象视为彼此的重复项。您可以在此处找到有关如何删除重复项的很好的解释:link