最佳实践-将SQL查询转换为LINQ
有人能建议如何将下面的SQL转换为LINQ吗最佳实践-将SQL查询转换为LINQ,sql,asp.net-mvc,linq,entity-framework,Sql,Asp.net Mvc,Linq,Entity Framework,有人能建议如何将下面的SQL转换为LINQ吗 SELECT distinct EmployeeID FROM Employee, Business WHERE Administrator = 1 or (BusinessID = 1 and (EmployeeID = Initiator or EmployeeID = Owner)) 或者建议使用多个表达式实现相同结果的更好方法?我已经读过LINQ可能有缺陷,所以我
SELECT distinct EmployeeID
FROM Employee,
Business
WHERE Administrator = 1 or
(BusinessID = 1 and
(EmployeeID = Initiator or
EmployeeID = Owner))
或者建议使用多个表达式实现相同结果的更好方法?我已经读过LINQ可能有缺陷,所以我认为查询越复杂,出现问题的可能性就越大?听起来您只想:
var query = (from employee in db.Employee
from business in db.Business
where employee.Administrator == 1 ||
(business.BusinessId == 1 &&
(employee.EmployeeId == business.Initiator ||
employee.EmployeeId == business.Owner))
select employee.EmployeeId).Distinct();
我已经猜到了哪个列属于哪个表…听起来您只想:
var query = (from employee in db.Employee
from business in db.Business
where employee.Administrator == 1 ||
(business.BusinessId == 1 &&
(employee.EmployeeId == business.Initiator ||
employee.EmployeeId == business.Owner))
select employee.EmployeeId).Distinct();
我已经猜到了哪一列属于哪一个表…
我已经读到LINQ可能有问题
-[需要引用]。我想你真正的意思是不是每一条SQL语句都可以转换为LINQ。我已经使用LINQ多年了,还没有发现任何错误。这不是错误,但查询越复杂,SQL输出就越可怕。我们正在进行一个练习,在这个练习中,我们使用现有的LINQ和EF查询,并在我们应用程序的性能更关键的领域手动重写它们。相关:谢谢各位。我想我不应该相信我读到的所有东西。我读过LINQ可能有问题。
-[需要引用]。我想你真正的意思是不是每一条SQL语句都可以转换为LINQ。我已经使用LINQ多年了,还没有发现任何错误。这不是错误,但查询越复杂,SQL输出就越可怕。我们正在进行一个练习,在这个练习中,我们使用现有的LINQ和EF查询,并在我们应用程序的性能更关键的领域手动重写它们。相关:谢谢各位。我想我不应该相信我读到的一切。