【发布时间】:2017-10-31 07:23:40
【问题描述】:
我正在开发一个能够根据用户选择过滤项目列表的网站,就像您可以过滤亚马逊搜索的结果一样。我不确定如何构建一个可以接受许多不同参数的路由,其中没有一个是必需的。
理想情况下,最终结果如下所示:
mysite.com/dothings/filter1/sometext/filter5/sometext/filter11/sometext
或
mysite.com/dothings/filter1:sometext/filter5:sometext/filter11:sometext
对于这两个,我不明白如何设置路由来处理随机过滤器/过滤器的随机排序。
目前我的代码只是:
//the real code would have 10+ filters
[Route("filter1/{filter1}/filter2/{filter2}")]
public IActionResult DoThings(string filter1 = null, string filter2 = null)
{
return Ok("Test");
}
但即使使用可选参数,如果我省略 filter1 它根本不会影响我的操作。
对于此类要求是否有通用方法?
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-5 asp.net-mvc-routing optional-parameters