Where()返回重复的行

时间:2013-01-25 22:32:31

标签: c# .net linq where

我有一个简单的表/型号:

public class Note
{
    public Guid Id { get; set; }
    public string note { get; set; }
    public DateTime? DateCreated { get; set; }
    public Guid InvestorId { get; set; }
}

我可以用

查询
db.Database.SqlQuery<Note>("SELECT * FROM Notes WHERE InvestorId = '" + id + "'").ToList()

并按预期返回id的所有注释。我试着用LINQ做:

db.Notes.Where(x => x.InvestorId == id).ToList()

我得到相同数量的行,但所有笔记都与第一行重复。在没有返回重复项的情况下在LINQ中执行此操作的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

我发现了问题。我一直在玩桌子尝试不同的技术,我用相同的数字填充了Notes中的Id(不是InvestorId)。显然,Sql查询并不关心这一点,但LINQ不喜欢它。