我想设置一个 ASP.NET MVC 路由,如下所示:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{idl}", // URL with parameters
new { controller = "Home", action = "Index", idl = UrlParameter.Optional } // Parameter defaults
);
路由看起来像这样的请求......
Example/GetItems/1,2,3
...到我的控制器操作:
public class ExampleController : Controller
{
public ActionResult GetItems(List<int> id_list)
{
return View();
}
}
问题是,我要设置什么来将idlurl 参数从 astring转换为List<int>并调用适当的控制器操作?
我在这里看到了一个相关的问题,它用于OnActionExecuting预处理字符串,但没有更改类型。我不认为这对我有用,因为当我OnActionExecuting在控制器中覆盖并检查ActionExecutingContext参数时,我看到ActionParameters字典已经有一个idl带有空值的键-大概是尝试从字符串转换为List<int>...是我想要控制的路由部分。
这可能吗?