多个连接表的linq where子句问题

时间:2010-11-03 08:19:32

标签: linq

var studentDetails = from aspUser in db.aspnet_Users
join aspMembership in db.aspnet_Memberships on
    aspUser.UserId equals aspMembership.UserId
join expUser in db.explore_users on
           aspUser.UserId equals expUser.aspnetUserId
               where expUser.Id.Equals(studID)
               select new { expUser.DOB,
                            aspMembership.Email,
                            aspUser.UserName,
                            aspUser.LoweredUserName,
                            expUser.Id };

gv1.DataSource = studentDetails;
gv1.DataBind();

我不知道为什么这不起作用。当我删除where子句时,一切都在运行。 我试着把expUser.Id == studID也放在哪里

如果有人可以帮助我

1 个答案:

答案 0 :(得分:1)

不应该是where expUser.aspnetUserId.Equals(studID)

如果ID是正确的列,那么(已经注释过)expUser.ID和变量studID的类型是什么?它们属于同一类型吗?如果是,那么db.explore_users中是否存在studID值?