我正在尝试使用2个参数进行操作,1是可选的 我正在尝试
[HttpGet, Route("movies/date/{dateMin}&{dateMax}")]
但它不起作用。 'dateMax'是可选参数,当没有给出时,它应该与dateMin的值相同 已经尝试过
[HttpGet, Route("movies/date/{dateMin}&{dateMax?}")]
但它也没有用。 我不想要像
这样的东西{dateMin}/{dateMax}
还有其他可能吗?
答案 0 :(得分:1)
你应该在你的RouteConfig.cs
中这样做 routes.MapRoute(
name: "Movies",
url: "{controller}/{action}/{dateMin}/{dateMax}",
defaults: new { controller = "movies", action = "date", dateMax= UrlParameter.Optional }
);
你的路线应该是这样的
"{controller}/{action}/{dateMin}/{dateMax}"
答案 1 :(得分:0)
您需要使用斜杠分隔路线中的路线参数,而不是使用查询字符串表示法(&
)。
[HttpGet, Route("movies/date/{dateMin}/{dateMax?}")]
public IHttpActionResult MoviesDate(DateTime dateMin, DateTime? dateMax){
}
如果使用RoutAttribute
,则无需更改路由配置