我有一个方法,我试图通过LINQ查询返回一些数据库结果,但是Visual Studio不允许我使用select语句。这就是我到目前为止所做的:
public static int GetCurrentUserDepartmentId(Guid userGuid)
{
int departmentId = -1;
using (PTMS_DataEntities entities = new PTMS_DataEntities())
{
var userDepartment = from employee in entities.Employees
join user in entities.aspnet_Users
on employee.User_Id equals user.UserId
where employee.User_Id equals userGuid
departmentId = (int)userDepartment;
}
return departmentId;
}
但是,在LINQ细分中,我喜欢它如下:
from employee in entities.Employees
join user in entities.aspnet_Users
on employee.User_Id equals user.UserId
where employee.User_Id equals userGuid
select employee.Department_Id
是否有一个特殊原因导致我无法添加最后一个选择部分?
答案 0 :(得分:2)
纠正你的
where employee.User_Id equals userGuid
带
where employee.User_Id == userGuid
答案 1 :(得分:2)
问题在于你的where子句:
var userDepartment = from employee in entities.Employees
join user in entities.aspnet_Users
on employee.User_Id equals user.UserId
where employee.User_Id equals userGuid
应该是:
var userDepartment = from employee in entities.Employees
join user in entities.aspnet_Users
on employee.User_Id equals user.UserId
where employee.User_Id == userGuid
select employee.Department_Id