我是新工作的路线。
有人知道这条路线不起作用。
/ dispatch / Paris / Lixo =找不到页面
/ dispatch?region = Paris& department = Lixo //作品。
的Global.asax:
routes.MapContentRoute(name: "customRoute",
url: "{region}/{department}",
defaults: new {
action = "index",
controller = "dispatch",
region = UrlParameter.Optional,
department = UrlParameter.Optional
}
//,contentRootResolver: (s) => s.StartPage
);
DispatchController.cs
public ActionResult Index(DispatchPage currentPage, string region, string department)
答案 0 :(得分:2)
请注意,您的路线仅包含地区和部门。 URL不假设控制器在那里。另外,我假设有一个默认路由已定义。所以:
/dispatch/Paris/Lixo
- 不适合任何事情。 {region}/{department}
没有控制器,因此路由处理器会将dispatch
分配给region
,将Paris
分配给department
。 Luxo
不适合任何东西,因此整条路线都不合适。另一方面,默认路由假定Paris
是一个动作,因此它也不适合。
/dispatch?region=Paris&department=Lixo
- 适合默认设置操作的默认路由。请注意,查询字符串参数在路由中不起任何作用,除非它们作为参数传递。
我认为你可能会追随的是这条路线:
url: "dispatch/{region}/{department}"
这将捕获第一个网址。