2010-11-03 77 views
0
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也沒有工作linq where多個連接表的子句問題

如果有人能幫助我PLS

+3

那麼,你會得到什麼錯誤? – 2010-11-03 08:21:58

+2

'Id'和'studID'是什麼類型?他們甚至是匹配類型? – 2010-11-03 08:27:53

回答

1

難道不應該被where expUser.aspnetUserId.Equals(studID)

如果ID是正確的列,那麼(已經評論過)expUser.ID和變量studID是什麼類型?他們是同一類型的嗎?如果是,那麼studID值是否存在於db.explore_users中?

+0

nope,aspnetUserID是aspnet成員資格ID。 – wibi 2010-11-03 08:49:11

+0

它修復了,這是我的壞studID上哪裏子句沒有正確傳遞給功能。 – wibi 2010-11-05 04:54:05