我希望能够导航到/orders/show
,/orders/show/10
和orders/show/10/20
。我尝试了以下方法:
[Route("orders/show/{skip=0:int:min(0)?}/{take=10:int:min(0)?}")]
public ActionResult Show(int? skip, int? take)
{
var inventory = ApplicationDbContext.Orders.OrderBy(x => x.Id).Skip(skip.Value).Take(take.Value).ToList();
return View(inventory);
}
基本上,目标是建立一个列出1-10,11-20等订单的表。除非我输入所有参数,否则我会得到404 Not found异常。
答案 0 :(得分:0)
您需要在routeconfig文件中注册路由。例如在AppStart文件夹中,转到routeconfig并注册路由。 e.g。
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapRoute(
name: "Orders",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Orders", action = "Show", id = UrlParameter.Optional }
}