2010-11-03 4 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(); 

Je ne sais pas pourquoi cela n'a pas fonctionné. Quand je supprime la clause where tout est en cours d'exécution. j'essayer de mettre où expUser.Id == studID est également ne fonctionne paslinq où problème de clause sur plusieurs tables de jointure

si quelqu'un peut me aider svp

+3

Eh bien, quelle erreur obtenez-vous? –

+2

Quel type est 'Id' et qu'est ce que' studID'? Sont-ils même des types correspondants? –

Répondre

1

Devrais pas être where expUser.aspnetUserId.Equals(studID)?

Si ID est la colonne correcte, alors (comme déjà commenté) de quel type sont expUser.ID et la variable studID? Sont-ils du même type? Si oui, alors la valeur de studID existe-t-elle dans db.explore_users?

+0

Non, aspnetUserID est l'ID d'appartenance aspnet. – wibi

+0

il a corrigé, c'était mon mauvais étudiant sur où la clause n'a pas passé correctement à la fonction. – wibi

Questions connexes