Je pensais que IQueryable <T>
a été dérivé de IEnumerable <T>
, alors pourquoi ne puis-je pas accéder aux résultats de ma requête comme une collection d'enregistrements?Qu'est-ce que je fais de mal avec IQueryable <T>?
public bool DoLogIn(System.String strUserName, System.String strPassword)
{
if (this.IsLoggedIn)
return false;
ASRDBDataContext ASRData = new ASRDBDataContext();
IQueryable<user> CurrUser =
from usr in ASRData.users
where usr.userName == strUserName
where usr.password == strPassword
select usr;
if (CurrUser.Count() != 1)
return false;
this.CurrUserID = CurrUser[0].userID; // Error
return true;
}
L'erreur renvoyée est: "Impossible d'appliquer l'indexation avec [] à une expression de type 'System.Linq.IQueryable <user>
'"