我有一个简单的行查询
var areaList = _db.vwArea
.OrderByDescending(q => q.Qualifier)
.ThenBy(r => r.Id)
.Take(topnareas.Value)
.ToList();
字符串
然后
foreach (var record in areaList)
{
Debug.WriteLine(record.Area);
}
型
在大约200个不同的区域中迭代。所有的身份证都不一样。
然而,我的输出看起来像:
AAAA
AAAA
AAAA
AAAA
BBBB
BBBB
BBBB
....
型
每个ID应该不同
AAAA
AAAB
AAAC
AAAD
....
型
它所拍摄的画面看起来不错。它返回应该返回的数据。
我错过了什么?
1条答案
按热度按时间rryofs0p1#
我想出来了虽然数据看起来都是正确的,但PK并没有沸腾。事实上,PK在基表中,但不在视图中,因此EF不知道PK是什么。当Linq在列表上交互时,直到我在模型中设置一个EntityKey,它才改变到下一条记录。当我这样做的时候,它开始像它应该的那样迭代。