EF中视图主键对查询结果的影响

昨天在一个查询结果中,由于错误的设置了主键,导致最终出来的查询结果与执行的SQL语句结果不一致,浪费了大半天时间解决这个不是问题的问题。于是今天特意写个示例测试下,昨天的猜想是否正确:
首先建了一个视图里面有一些数据。
View_Demo

IdUserNameClassIdGrade
1张三11
2李四11
3王五21
4李小龙21
5周星弛21
6刘德华12
7任达华12

然后在VS中新建一个来自数据的EF模型,将视图添加到模型中,添加后的模型是这样的,注意主键标识:
这里写图片描述
VS自动把所有的字段设置成主键。通过应用查询出来的结果为:
这里写图片描述
没有错误。

我将视图中的主键重新设置一次,修改为这样:
这里写图片描述
执行结果不一样了。
猜想:EF在封装对象实体时,是否将主键作为标识,如果发现已经有相同主键的对象,就直接使用上一个的copy。不再进行新的封装。这个猜想待我空了再去验证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值