gpt4 book ai didi

sql - Entity Framework 中的结果与 LINQ to SQL 不同

转载 作者:行者123 更新时间:2023-12-04 19:19:17 25 4
gpt4 key购买 nike

我首先在我的项目中使用 LINQ to SQL 并使用以下语句:

var ProjectRouteEmails = EmailManagerDAL.Context.ProjectRouteEmails
.Where(p => p.ProjectID == ProjectID);

从 ProjectRouteEmails View 中正确返回了三个不同的电子邮件。从电子邮件表返回的 ID 为 117、591 和 610。

我更改为 LINQ to Entities 并使用相同的 View 和相同的 LINQ 语句,但即使我返回了三个记录,它也是第一个记录,ID 117,它被返回了三次。

我尝试像这样编写 LINQ 语句:
var ProjectRouteEmails = from p in EmailManagerDAL.Context.ProjectRouteEmails
where p.ProjectID == ProjectID
select p;

但这没什么区别;相同的记录返回了 3 次。

我进入 SQL Server Management Studio 并运行查询:
select * from ProjectRouteEmails (nolock) 
where ProjectID = 12

并返回正确的三个唯一记录。

这里发生了什么?

谢谢!

最佳答案

确保为实体数据模型中的 ProjectRouteEmails 正确设置实体键。有时将 View 导入模型时实体键会搞砸。

关于sql - Entity Framework 中的结果与 LINQ to SQL 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5950619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com