Joh*_*ohn 2 c# indexing expression
var dbPerson = from p in db.People
where p.Id == PersonId select p;
dbPerson[0].HolidaysRemaining--;
Run Code Online (Sandbox Code Playgroud)
向我抛出dbPerson [0]错误,说不能将[]的索引应用于类型'system.linq.lqueryable,holidayBookingApp.model.person>的表达式
有人可以建议我如何解决这个问题吗?
谢谢
LINQ查询的结果不是List,而是自定义类型IQueryable,没有索引器。您不能以这种形式随机访问LINQ查询的结果。
如果确实需要,可以有多种选择:
IList,例如call dbPerson.ToList()。IQueryableextension方法实现此目的:dbPerson.First()[x],则可以使用IQueryable扩展方法:dbPerson.Skip(x).First()