Last and LastOrDefault not supported(不支持 Last 和 LastOrDefault)
问题描述
我正在尝试获取列表中的第一个和最后一个值.支持查询运算符 First()
,但 Last()
和 LastOrDefault()
会出错.我是否错误地使用了 Last()
运算符?
I am trying to get the first and last values in a list. The query operator First()
is supported but Last()
and LastOrDefault()
give an error. Am I using the Last()
operator incorrectly?
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();
}
更新:
--错误--
尝试 1:不支持查询运算符Last
".
Attempt 1: The query operator 'Last
' is not supported.
尝试 2:不支持查询运算符LastOrDefault
".
Attempt 2: The query operator 'LastOrDefault
' is not supported.
尝试 3:不支持查询运算符Reverse
".
Attempt 3: The query operator 'Reverse
' is not supported.
推荐答案
- 我宁愿使用
AsEnumerable()
,而不是通过调用ToList()
或ToArray()
将其放入自己的列表中. - 另外像其他人一样,您应该尝试
OrderByDescending()
- 我会使用
Any()
而不是Count()
. - Instead of putting it into an own list by calling
ToList()
orToArray()
i would prefer to useAsEnumerable()
. - Additionally like the others you should try
OrderByDescending()
- Instead of
Count()
i would useAny()
.
这篇关于不支持 Last 和 LastOrDefault的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:不支持 Last 和 LastOrDefault


- 是否可以在 .Net 3.5 中进行通用控件? 2022-01-01
- CanBeNull和ReSharper-将其用于异步任务? 2022-01-01
- Windows 喜欢在 LINUX 中使用 MONO 进行服务开发? 2022-01-01
- 带问号的 nvarchar 列结果 2022-01-01
- 在 C# 中异步处理项目队列 2022-01-01
- C# 通过连接字符串检索正确的 DbConnection 对象 2022-01-01
- 在 LINQ to SQL 中使用 contains() 2022-01-01
- Azure Active Directory 与 MVC,客户端和资源标识同一 2022-01-01
- 使用 rss + c# 2022-01-01
- 为什么 C# 中的堆栈大小正好是 1 MB? 2022-01-01