分页错误:“跳过”方法仅支持 LINQ to Entities 中的排序输入。必须在方法“Skip”之前调用方法“OrderBy”

2024-05-17

我正在索引页上的 MVC 中进行分页..在这一行我收到错误

return View( employee.ToPagedList(Page ?? 1,3));

这是索引方法

 public ActionResult Index(string searchBy, string search, int? Page, string sortBy)
    {
        ViewBag.SortNameParameter = string.IsNullOrEmpty(sortBy) ? "Name desc"
            : "";

        ViewBag.SortGenderParameter = string.IsNullOrEmpty(sortBy) ? "Gender desc"
            : "Gender";

        var employee = db.Employees.AsQueryable();

        if (searchBy == "Gender")
        {
            employee = employee.Where(x => x.Gender == search || search == null);
        }
        else
        {
            employee = employee.Where(x => x.FUllName .StartsWith(search ) || search == null);
        }

        switch (sortBy)
        {
            case "Name desc":
                employee = employee.OrderByDescending(x => x.FUllName);
                break;

            case "Default":
                employee = employee.OrderBy(x => x.FUllName);
                break;
        }

      return View( employee.ToPagedList(Page ?? 1,3));
    }

我没有使用 Skip 方法...但是有这个错误:

仅 LINQ to 中的排序输入支持“Skip”方法 实体。必须在该方法之前调用“OrderBy”方法 '跳过'。

我读过类似的帖子

仅 LINQ to Entities 中的排序输入支持“Skip”方法。必须在方法“Skip”之前调用方法“OrderBy” https://stackoverflow.com/questions/11222694/the-method-skip-is-only-supported-for-sorted-input-in-linq-to-entities-the-me

如何解决“LINQ to Entities 中的排序输入仅支持方法‘Skip’”。 https://stackoverflow.com/questions/22800908/how-to-solve-the-method-skip-is-only-supported-for-sorted-input-in-linq-to-en

仅 LINQ to Entities 中的排序输入支持“Skip”方法。必须在方法“Skip”之前调用方法“OrderBy” https://stackoverflow.com/questions/21705926/the-method-skip-is-only-supported-for-sorted-input-in-linq-to-entities-the-me

ASP.NET MVC 3 页面列表。仅 LINQ to Entities 中的排序输入支持“Skip”方法。 https://stackoverflow.com/questions/10660726/asp-net-mvc-3-pagedlist-the-method-skip-is-only-supported-for-sorted-input-in

并做了以下更改...

1.将employee.Where代码放在switch语句之前:

2.在 switch 语句中添加 default case,并使其抛出异常。 案例“默认”: 抛出新的ArgumentException(“错误”,sortBy);

  1. 使用 IOrderedQueryable 类型。

    IQueryable 员工 = db.Employees.AsQueryable();

这并不能解决问题..
他们大多使用 Skip 方法..但我没有...并且其他帖子查询很复杂..

请提出缺少的内容


你确实有一个Skip method.

The PagedList为你添加了它。检查代码。这就是分页的工作原理,Take and Skip.

另外我认为你的案件陈述的目的是

    switch (sortBy)
    {
        case "Name desc":
            employee = employee.OrderByDescending(x => x.FUllName);
            break;

        default: // Not: case "Default"
            employee = employee.OrderBy(x => x.FUllName);
            break;
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分页错误:“跳过”方法仅支持 LINQ to Entities 中的排序输入。必须在方法“Skip”之前调用方法“OrderBy” 的相关文章

  • 如何有效确保小数值至少有 N 位小数

    我想在进行算术运算之前有效地确保十进制值至少有 N 个位置 在下面的示例中 3 显然我可以格式化 0 000 然后解析 但它的效率相对较低 我正在寻找一种避免与字符串转换的解决方案 我尝试过以下解决方案 decimal d 1 23M d
  • 如何使用 google test for C++ 来运行数据组合

    我有一个单元测试 需要针对 200 种可能的数据组合运行 生产实现在配置文件中有要测试的数据 我知道如何模拟这些值 我更喜欢为每个组合编写单独的测试用例 并使用某种方式循环数据 有没有使用 Google test for C 的直接方法 您
  • C# 代码自动授予 IIS 对 Windows Server 2008 上文件夹的写入权限?目前抛出异常

    我正在尝试编写一个命令行工具 该工具将为 Windows Server 2008 上的 IIS7 5 提供对 wwwroot 中文件夹的写入权限 以便 Web 应用程序有权写入其基本目录中的特定文件夹 以前 您可以通过在文件夹上分配 IIS
  • 如何消除字符串中的所有换行符?

    我需要删除字符串中出现的所有换行符 来自数据库 我使用下面的代码来做到这一点 value Replace r n Replace n Replace r 我可以看到至少有一个角色的行为就像行尾一样幸存了下来 字符代码是8232 http w
  • 无效的超链接:格式错误的 URI 作为超链接嵌入到文档中

    我在我的应用程序中使用 OpenXml 命名空间 我用它来读取 Excel 文件中的 XML 这对于某些 Excel 文件工作正常 但在其他文件上我收到运行时错误 无效超链接 格式错误的 URI 作为超链接嵌入到文档中 我在下面一行得到运行
  • 第一次机会异常 - 在内存位置长?

    这是什么 我该如何处理 修复它 First chance exception at 0x756fb727 in Program exe Microsoft C exception long at memory location 0x0018
  • 将 C++ 连接到 C#

    我一直在用 C 编写一个程序 注意到 C 中有一个库 别人写的 我想链接到我的代码 但我不知道该怎么做 有人可以提出建议吗 怀疑这很重要 但我正在使用带有 MSVC2010 的 Windows 7 提前致谢 您可以尝试在 C CLI 模式下
  • C# 如何使用 WM_GETTEXT / GetWindowText API / 窗口标题

    我想获取应用程序的控件 句柄的内容 这是实验代码 Process processes Process GetProcessesByName Notepad foreach Process p in processes StringBuild
  • 使用 async/await 抛出和捕获异常的正确方法

    全部请拿下面的二维码 Task
  • 良好的类似 STL 的 C 库 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 对于具有向量 双端队列 堆栈 哈希图 树形图 集合等数据结构的 C 语言来说 有哪些好的库 请使用纯 C 并且与平台无关 The Glib
  • Wpf TextBlock 中的垂直文本

    是否可以垂直显示 TextBlock 中的文本 以便所有字母彼此堆叠 不使用 LayoutTransform 旋转 还没有人提到使用纯 XAML 垂直堆叠任意字符串的字母 不旋转它们 的明显而简单的方法
  • 何时使用模拟框架?

    因此 我正在使用模拟框架 Moq 进行单元测试 并且想知道何时应该使用模拟框架 以下两个测试之间的优点 缺点是什么 public class Tests Fact public void TestWithMock Arrange var r
  • 如何使用 LINQ 获取 Count() 的 Max()

    我是 LINQ 新手 我遇到了这种情况 我有这张表 ID Date Range 1 10 10 10 9 10 2 10 10 10 9 10 3 10 10 10 9 10 4 10 10 10 8 9 5 10 11 10 1 2 6
  • 英特尔 SSE:为什么 `_mm_extract_ps` 返回 `int` 而不是 `float`?

    为什么 mm extract ps返回一个int代替float 读单的正确方法是什么float来自 C 中的 XMM 寄存器 或者更确切地说 另一种询问方式是 其相反的是什么 mm set ps操作说明 所有答案似乎都没有真正回答问题 wh
  • 为什么不继承 std::allocator

    我创建了自己的分配器 如下所示 template
  • C 位域内存使用情况

    我需要处理以下形式的一些数据 typedef struct unsigned n1 12 unsigned n2 12 unsigned n3 12 unsigned n4 1 unsigned n5 35 data 我确保它们总共最多有
  • 忽略 Entity Framework 6 中除部分属性外的所有属性

    我想使用实体框架在数据库中保留一些数据 我有一些更大的 POCO 但我只想存储一些属性 我知道我可以通过Fluent API通过使用Ignore 方法 但是是否也有可能不仅忽略已定义的属性 而且还忽略除已定义属性之外的所有属性 所以如果你有
  • ASP.NET Core 基于自定义策略的授权 - 不清楚

    好的 ASP NET Core 中基于自定义策略的授权 我有点理解这个新身份框架的想法 但仍然不是 100 清楚你可以用它实现什么 假设我们在 HomeController 中有一个名为 List 的 Action 此操作将查询并显示数据库
  • 如何使转发引用参数仅绑定到右值引用?

    我正在编写一个网络库 并大量使用移动语义来处理文件描述符的所有权 我的一个类希望接收其他类型的文件描述符包装器并取得所有权 所以它就像 struct OwnershipReceiver template
  • 使用 LINQ 将 DataTable 列中的值读入 List

    我有一个DataTable服务返回给我的包含 5 列的对象 我只对其中一栏感兴趣 FuncName列 并希望我的实用程序方法调用该服务来删除额外的信息并仅返回一个List

随机推荐