我有一个MVC5网站,里面有几个区域。每个区域都有自己的一组控制器,显然每个控制器都有一个默认的Index.cshtml作为登陆页面。到目前为止一切都很好。
但是如何实现区域的目标网页?我不认为可以有一个独立于控制器的区域的登陆页面,所以我可能需要使用一个区域家庭控制器来自愿登陆页面。
问题是我希望这样的网址能够正常工作:
derived::requisites()
目前无法正常工作,除非我这样做:
http://www.domain.exe/AreaN/
此时我的区域注册路线看起来像这样
http//www.domain.exe/AreaN/Controller/
答案 0 :(得分:0)
我对区域不太熟悉,但你不能在路线选项中定义controller
吗?
context.MapRoute(
"AreaN_default",
"AreaN/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new string[] { "Namespace" }
);
然后AreaN/Home/Index
将是您的默认视图。
正如NightOwl888在评论中解释的那样,这使得控制器可选,因为默认控制器现在是家庭控制器。