gpt4 book ai didi

asp.net-mvc - 在 .NET MVC 中向 URL 添加过滤器的最佳方法

转载 作者:行者123 更新时间:2023-12-03 18:35:09 25 4
gpt4 key购买 nike

我会尽量做到简洁。

  • 网页包含一个允许过滤和排序的表格
  • 对过滤和排序的更改应反射(reflect)在 URL 中,以便用户可以添加书签或共享过滤的 View 。

  • 问题是:允许所有排序和过滤语法成为 URL 的一部分并在服务器上轻松解释/使用它而无需编写一堆解释它的自定义代码的有效约定是什么?

    我一直在做一些研究,我遇到了 OData URI 约定,我喜欢他们做事的方式。
    http://www.odata.org/developers/protocols/uri-conventions

    更多研究表明 MVC 4 Web API 允许通过返回 IQueryable 来使用该约定。除了一部分之外,这看起来很棒......此时我没有实现 RESTful API,这似乎就是它的全部功能。那么我怎样才能使用像 OData 这样的东西并且仍然返回一个 View 或 PartialView 呢?有什么东西可以将 OData URI 约定解析为 C# 对象吗?

    如果有人对此问题或建议有任何见解,我会全力以赴。

    最佳答案

    至于你的问题的 url 约定部分,我认为你已经用 OData 回答了你自己的问题。至于将这些数据放入 C# 对象,我将使用以下方法:

    使用操作过滤器来解释 url 参数并将它们解析为 c# 对象。
    在您的操作过滤器中,将 url 参数添加到路由数据中,c# 对象将在您的操作中可用。

    ASP.NET MVC Pass object from Custom Action Filter to Action

    看看 Telerik MVC 网格,他们使用 GridAction 操作过滤器,它几乎可以满足您的要求。

    关于asp.net-mvc - 在 .NET MVC 中向 URL 添加过滤器的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9831627/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com