我正在尝试获取列表中的第一个和最后一个值。支持查询运算符First()
,但Last()
和LastOrDefault()
给出错误。我是否使用Last()
运算符不正确?
var purchaseBills = db.PurchaseBills.OrderBy(p => p.BillID);
if (purchaseBills.Count() >0)
{
var firstBill = purchaseBills.First(); // This is supported
// Attempt 1
var lastBill = purchaseBills.Last(); // Not supported
// Attempt 2
var lastBill = purchaseBills.LastOrDefault(); // Not supported
//Attempt 3
var lastBill = purchaseBills.Reverse().First(); // Not supported
textBoxPurchaseBillFrom.Text = firstBill.BillNo.ToString();
textBoxPurchaseBillTo.Text = lastBill.BillNo.ToString();
}
更新:最佳答案
ToList()
或ToArray()
放入自己的列表中,不如使用AsEnumerable()
。 OrderByDescending()
Count()
代替Any()
。 关于c# - 不支持Last和LastOrDefault,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7253529/