gpt4 book ai didi

c# - 一般将 IQueryable 转换为 IOrderedQueryable

转载 作者:太空狗 更新时间:2023-10-29 17:42:09 26 4
gpt4 key购买 nike

我有一个通用方法,我使用 IQueryable<T>并返回 IOrderedQuerable<T>使用 Linq-to-Entities。

一个简单的input.OrderBy(p => p.something)不会工作,因为我不知道 T 的任何属性(我不能将其限制在一个界面上)。

将结果转换为 ( IOrderedQuerable<T> ) 似乎有效,直到您尝试将其与 .Skip() 一起实际使用或 .Take() ,此时您会收到运行时错误。

我想我理论上可以使用反射,看看我是否找到一个 int或其他东西并构建一个表达式用作排序,但这看起来很脏。

有什么想法吗?

最佳答案

input.OrderBy(p => 0);

这样您就可以按照最初的顺序获得这些项目。但是,这会消耗额外的 CPU。

关于c# - 一般将 IQueryable 转换为 IOrderedQueryable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14524427/

26 4 0