如何解决“LINQ to Entities 中的排序输入仅支持方法‘Skip’”。

2024-03-02

当我使用“LINQ toEntity”显示每个产品并在 ASP.NET MVC 中实现分页时,出现此错误:

The method 'Skip' is only supported for sorted input in LINQ to Entities.
The method 'OrderBy' must be called before the method 'Skip'."

LINQ:

Model.Name = db.Products.Where(p => p.ProductSubcategoryID == id)
                        .Skip((page - 1) * pageSize)
                        .Take(pageSize)
                        .ToList();

我该如何修复它?如果我把会发生什么OrderBy代替Where?


你不“把OrderBy代替Where“......你将它们结合起来:

Model.Name = db.Products.Where(p => p.ProductSubcategoryID == id)
                        .OrderBy(p => p.ProductSubcategoryID) // <---- this
                        .Skip((page - 1) * pageSize)
                        .Take(pageSize)
                        .ToList();

这是必需的,因为生成的 SQL 将生成类似以下内容的内容:

WHERE generated_id BETWEEN x AND y

如果您没有明确告诉数据库服务器返回结果的顺序...您的结果每次都会不同(可能)。然而,如果您按字段排序,则保证它们按顺序出现,因此您的分页将产生一致的结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何解决“LINQ to Entities 中的排序输入仅支持方法‘Skip’”。 的相关文章

  • C#.Net 邮件将进入垃圾邮件文件夹

    我正在从 ASP net Web 应用程序发送电子邮件 邮件发送成功 没有失败 但大多数都进入了垃圾邮件文件夹 请帮助我克服垃圾邮件过滤器 我的发送邮件代码 public void SendMail string FromAddress s
  • 如何使用 openSSL 函数验证 PEM 证书的密钥长度

    如何验证以这种方式生成的 PEM 证书的密钥长度 openssl genrsa des3 out server key 1024 openssl req new key server key out server csr cp server
  • 关于逻辑/算法的想法以及如何防止线程写入 Sql Server 中的竞争

    我有以下逻辑 public void InQueueTable DataTable Table int incomingRows Table Rows Count if incomingRows gt RowsThreshold async
  • 为什么 C 程序使用 Scanf 给出奇怪的输出?

    我目前正在学习 C 编程 并且遇到了这个奇怪的输出 Program will try functionalities of the scanf function include
  • C# 中的 Stack<> 实现

    我最近一直在实现递归目录搜索实现 并且使用堆栈来跟踪路径元素 当我使用 string Join 连接路径元素时 我发现它们被颠倒了 当我调试该方法时 我查看了堆栈 发现堆栈内部数组中的元素本身是相反的 即最近 Push 的元素位于内部数组的
  • 在 C 语言中,为什么数组的地址等于它的值?

    在下面的代码中 指针值和指针地址与预期不同 但数组值和地址则不然 怎么会这样 Output my array 0022FF00 my array 0022FF00 pointer to array 0022FF00 pointer to a
  • 在 Mono 中反序列化 JSON 数据

    使用 Monodroid 时 是否有一种简单的方法可以将简单的 JSON 字符串反序列化为 NET 对象 System Json 只提供序列化 不提供反序列化 我尝试过的各种第三方库都会导致 Mono Monodroid 出现问题 谢谢 f
  • 使用 C# 和 ASP.NET 在电子邮件附件中发送 SQL 报告

    我正在尝试使用 ASP NET 和 C 从 sql reportserver 2008 作为电子邮件附件发送报告 到目前为止我学会了如何获取 PDF 格式的报告 http weblogs asp net srkirkland archive
  • 用于在标头更改时重新编译的简单 C 项目的示例 makefile

    有谁有完整的 makefile 可以执行以下操作 如果 HEADER 文件发生更改 则重建项目 cpp 文件在 makefile 中列出 头文件未在 makefile 中列出 头文件允许与 cpp 文件具有不同的名称 部分cpp文件没有头文
  • 为什么这个 makefile 在“make clean”上执行目标

    这是我当前的 makefile CXX g CXXFLAGS Wall O3 LDFLAGS TARGET testcpp SRCS main cpp object cpp foo cpp OBJS SRCS cpp o DEPS SRCS
  • JavaScript 错误:MVC2 视图中的条件编译已关闭

    我试图在 MVC2 视图页面中单击时调用 JavaScript 函数 a href Select a JavaScript 函数 function SelectBenefit id code alert id alert code 这里 b
  • Libev,如何将参数传递给相关回调

    我陷入了 libev 中争论的境地 通常 libev 在类似的函数中接收包 接收回调 没关系 但是实际操作中 我们需要派遣一个亲戚 写回调 根据收到的包裹处理具体工作 例如 S RECV MSG pstRecvMsg S RECV MSG
  • .NET 和 Mono 之间的开发差异

    我正在研究 Mono 和 NET C 将来当项目开发时我们需要在 Linux 服务器上运行代码 此时我一直在研究 ASP NET MVC 和 Mono 我运行 Ubuntu 发行版 想要开发 Web 应用程序 其他一些开发人员使用 Wind
  • Xamarin Forms Binding - 访问父属性

    我无法访问页面的 ViewModel 属性以便将其绑定到 IsVisible 属性 如果我不设置 BindingContext 我只能绑定它 有没有办法可以在设置 BindingContext 的同时访问页面的 viewmodel root
  • 如何在C#中控制datagridview光标移动

    我希望 datagridview 光标向右移动到下一列 而不是在向单元格输入数据后移动到下一行 我试图通过 dataGridView1 KeyDown 事件捕获键来控制光标 但这并不能阻止光标在将数据输入到单元格后移动到下一行 提前感谢你的
  • 如何组合两个 lambda [重复]

    这个问题在这里已经有答案了 可能的重复 在 C 中组合两个 lambda 表达式 https stackoverflow com questions 1717444 combining two lamba expressions in c
  • Streamwriter 覆盖 txt 文件中的文本

    有没有什么方法可以重新打开流写入器而不创建新的写入对象 因为此时 当调用 WriteOdd 时 streamwriter 正在覆盖在它之前调用的 WriteEven public void WriteEven StreamWriter wr
  • 从后面的代码添加外部 css 文件

    我有一个 CSS 文件 例如 SomeStyle css 我是否可以将此样式表文档从其代码隐藏应用到 aspx 页面 您可以将文字控件添加到标头控件中 Page Header Controls Add new System Web UI L
  • 声明一个负长度的数组

    当创建负长度数组时 C 中会发生什么 例如 int n 35 int testArray n for int i 0 i lt 10 i testArray i i 1 这段代码将编译 并且启用 Wall 时不会出现警告 并且似乎您可以分配
  • 如何为有时异步的操作创建和实现接口

    假设我有数百个类 它们使用 计算 方法实现公共接口 一些类将执行异步 例如读取文件 而实现相同接口的其他类将执行同步代码 例如将两个数字相加 为了维护和性能 对此进行编码的好方法是什么 到目前为止我读到的帖子总是建议将异步 等待方法冒泡给调

随机推荐

  • 在 Spark 中将带有 MapType 列的 DataFrame 写入数据库

    我正在尝试使用 clickhouse native jdbc 驱动程序将带有 MapType 列的数据帧保存到 Clickhouse 架构中也包含地图类型列 并遇到以下错误 Caused by java lang IllegalArgume
  • SVN提交问题

    我正在使用 netbeans 最近当我尝试提交更改时收到此错误消息 org tigris subversion javahl ClientException Permission denied Commit failed details f
  • Docker Compose JVM 参数

    我编写了一个 Java 应用程序 它采用一个环境变量 该变量采用一个参数来为 JWT 令牌盐密钥设置密钥 有没有办法让我在 Docker Compose 中传递命令变量 java Djava security egd file dev ur
  • 杰基尔没有再生

    我一直在尝试使用 Jekyll 但无法让 Jekyll 重新生成文件更改 jekyll server auto 我正在使用 Sass 但我什至无法让它与普通的 css 一起工作 我尝试过插件 我尝试过提取其他人的存储库并仅使用那里的代码 但
  • Visual C++中delete和delete[]一样吗?

    我知道我应该使用delete 我使用后new 所以使用auto ptr with new 这可不是什么好主意 然而 在调试时delete 使用 Visual Studio 2005 我注意到调用进入了一个如下所示的函数 void opera
  • 如何检查 .xls 和 .csv 文件是否为空

    问题 1 如何检查整个 xls 或 csv 文件是否为空 这是我正在使用的代码 try if os stat fullpath st size gt 0 readfile fullpath else print empty file exc
  • 对 MongoDB 的多个 mongoose count() 查询

    第一 我 gt MongoNoob 我知道这已经以一种或另一种方式被问过 但到目前为止我还没有发现任何具体内容 假设我有两个 Moongoose 模型 描述如下 var pollSchema mongoose Schema title St
  • Java 字符串内部和文字

    下面两段代码是一样的吗 String foo foo String foo new String foo intern 他们有相同的最终结果 但它们并不相同 它们会产生不同的字节码 new String foo intern version
  • 有没有办法获取动画的剩余时间?

    假设我有一些 div 并且我使用 animate opacity 0 400 function 为了它的孩子 那么是否有可能获得动画完成的剩余时间 例如 剩余 200 毫秒 或者如果没有动画则为 0 谢谢 为了帮助您更好地了解如何使用ste
  • 在finally块中,我可以判断是否抛出了异常[重复]

    这个问题在这里已经有答案了 可能的重复 是否可以在进入finally块之前检测是否发生异常 https stackoverflow com questions 184704 is it possible to detect if an ex
  • Rails - 如何在不重复的情况下为多个角色声明 attr_accessible

    有没有办法为多个角色声明 attr accessible 而无需大量重复 如果我有多个用户角色 并且每个角色都可以编辑不同的属性子集 那么我的 attr accessible 声明如下所示 attr accessible first nam
  • 使用 Hibernate 和 spring 检查数据库中是否存在行的最快方法是什么?

    我需要以非常快的方式检查数据库中是否存在一行 假设我有主键 我在 Hibernate 的 FAQ 网站上找到了这段代码片段 Integer count Integer session createQuery select count fro
  • 禁用 Doctrine 外键约束

    我与我的一个模型有关系 ORM ManyToOne targetEntity Page cascade persist ORM JoinColumn name page id referencedColumnName id private
  • 如何执行没有返回类型或回调的 DELETE 请求? [改造]

    我需要使用 Retrofit 执行 DELETE 请求 所以 我的界面代码片段如下所示 DELETE api item id void deleteItem Path id int itemId 但我收到错误 java lang Illeg
  • 如何随机放置UIButton和值

    我有一个问题视图 将显示 4 个答案 只有 1 个是正确的 但我不希望同一个按钮始终是正确的答案 我想知道如何每次随机放置 4 个 UIButton 和值 当用户再次进入这个问题时 答案将在不同的按钮中 我的 X y W H 位置 按钮1
  • LC.exe 无法运行

    编译时我收到错误LC EXE http msdn microsoft com en us library ha0k3c9f v vs 80 aspx The specified task executable LC exe could no
  • 过滤和分页

    大家好 感谢您的帮助 我正在尝试实现一个简单的分页过滤器 按类别隐藏 li 例子是here http jsfiddle net vU9Hv 11 我是这方面的新手 但在一些帮助下 主要想法正在发挥作用 唯一的问题是 当我单击过滤时 我只想对
  • 通过 AJAX 下载 CSV

    您可以使用 AJAX 从 Web 应用程序下载生成的 csv 文件吗 如果是的话 有人可以向我指出任何类型的参考吗 编辑 抱歉 我应该提到我正在使用 Prototype 的 Ajax Request 我查看了 firebug 的响应工具 生
  • 根据 R 中的条件选择列表的嵌套子列表

    我有以下嵌套列表的简单示例 list list structure list group a def control Names c group def list structure list group b def disease1 Na
  • 如何解决“LINQ to Entities 中的排序输入仅支持方法‘Skip’”。

    当我使用 LINQ toEntity 显示每个产品并在 ASP NET MVC 中实现分页时 出现此错误 The method Skip is only supported for sorted input in LINQ to Entit