Asp.net mvc 多动作MVC中的路由问题
路由Asp.net mvc 多动作MVC中的路由问题,asp.net-mvc,Asp.net Mvc,路由 public ActionResult Browse(string country , string serachQuery , int? jobCategoryId , string jobCategory) { } 链接1 routes.MapRoute( name: "search", url: "Job/Browse/{country}/{serachQuery}/{jobCategoryId}/{jobCat
public ActionResult Browse(string country , string serachQuery , int? jobCategoryId , string jobCategory)
{
}
链接1
routes.MapRoute(
name: "search",
url: "Job/Browse/{country}/{serachQuery}/{jobCategoryId}/{jobCategory}",
defaults: new { controller = "Job", action = "Browse", country = UrlParameter.Optional, serachQuery = UrlParameter.Optional, jobCategoryId = UrlParameter.Optional, jobCategory = UrlParameter.Optional }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults: new { controller = "Job", action = "Browse" }
);
如何显示链接1,如下所示
http://{URL}/Job/Browse/12/engineers更改链接
http://{domain}/Job/Browse/Dubai
您缺少一个关键信息,即如果之前至少缺少一个可选参数,则无法使用可选路由参数 因此,根据您提供的路线定义,可以使用以下路线:
- Job/Browse/{country}/{serachQuery}/{jobCategoryId}/{jobCategory}
- Job/Browse/{country}/{serachQuery}/{jobCategoryId}
- Job/Browse/{country}/{serachQuery}
- Job/Browse/{country}
- 工作/浏览
- Job/Browse/{jobCategodyId}
- 作业/浏览/{serachQuery}/{jobCategory} 等等
<a href="@Url.Action("Browse","Job", new { country= @country.Value })">@country.Value</a>
http://{domain}/Job/Browse/Dubai
<a href="@Url.Action("Browse", new{country="/",serachQuery ="/",jobCategoryId = Model.JobCategoryList[i].LookUpId , jobCategory= Gulfjobs.Common.Convert.ToSeoUrl(Model.JobCategoryList[i].Value )})" >@Model.JobCategoryList[i].Value</a>