asp.net – 具有齐次参数数组的MVC路由
发布时间:2020-12-16 06:54:03 所属栏目:asp.Net 来源:网络整理
导读:我尝试使用一组齐次参数为资源创建路由. 网址如下所示: 产品/分类/ {categoryId1} / {} categoryId2 /…/品牌/ {brandID1} / {} brandID2 / … 并希望一个动作方法看起来像这样: public ActionResult GetProducts(IList categoryID,ILIsts brandID) {…}
我尝试使用一组齐次参数为资源创建路由.
网址如下所示: 并希望一个动作方法看起来像这样: 类别和品牌是独立过滤器. 我找到了类似任务的解决方案: 并且想知道是否有更美丽的解决方案允许使用这个原型 代替 行动方法 – 避免分裂弦和铸造? 我怎么能为我的案子适合这个解决方案? 先谢谢大家! 解决方法
使用自定义处理程序,就像我在
this answer中发布的那样.
可能需要一些调整,但这样的事情应该有效: public class ProductsRouteHandler : IRouteHandler { public IHttpHandler GetHttpHandler(RequestContext requestContext) { IRouteHandler handler = new MvcRouteHandler(); var vals = requestContext.RouteData.Values; vals["categoryID"] = vals["categories"].Split("/"); vals["brandID"] = vals["brands"].Split("/"); return handler.GetHttpHandler(requestContext); } } // in the route: routes.MapRoute( "test","products/category/{*categories}/brand/{*brands}",new { Controller = "product",Action = "getproducts"} ).RouteHandler = new ProductsRouteHandler (); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.Net的最佳免费文件管理器
- asp.net-web-api – 从ExceptionLogger引用操作参数
- asp.net – modalpopupextender取消按钮,就好像它正在回发一
- 在.net核心项目中获取DefinitelyTyped打字稿定义文件的“正
- 在使用ASP.NET会话时是否可以强制请求并发?
- asp.net-mvc-3 – 剃刀语法动态命名HTML元素
- asp.net – 拥有专用应用程序池,将Web应用程序保留在一个默
- 如何默认选择一个单选按钮 – asp.net mvc强类型的html助手
- asp.net-mvc – LINQ Distinct()
- asp.net-mvc – 使用ELMAH记录EventLog中的错误
推荐文章
站长推荐
热点阅读