这是我第一次使用实体框架,我收到了一些令人困惑的结果。我知道当我运行这个SQL查询时,一个特定的表包含3个不同的行:
SELECT * FROM mytable WHERE service_month = 201012
当我对框架运行此查询时,我得到3行,但它们都是第一行的副本(VB语法)。
Dim temp = _context.mytable.Where(Function(x) x.service_month = 201012)
我是否错误地设置了某些内容?这就是我用LINQ to SQL做的事情,所以我觉得我错过了什么。
答案 0 :(得分:22)
在EDMX中修复主键定义。 (如果您的表没有PK,请添加一个。)当所有行返回相同的“键”时,EF返回相同的对象实例。