用于asp.net MVC4的url重写代码;我在代码中使用了App_Start / RouteConfig.cs。
routes.MapRoute(
name: "subjectSefLink",
url: "{controller}/{seo}/{page}",
defaults: new
{
controller = "subject",
action = "Index",
seo = UrlParameter.Optional,
page = UrlParameter.Optional
});
我使用Controller;
public class SubjectController : Controller
{
public ActionResult Index(string seo, int page)
{
return View();
}
}
但不起作用;未找到代码= 404的输出
答案 0 :(得分:1)
您必须将int page
变量声明为nullable
。与路由一样,您已将page
变量声明为Optional
。所以,控制器中的动作方法应该是这样的
public class SubjectController : Controller
{
public ActionResult Index(string seo, int? page)
{
return View();
}
}