我的Fa
区域中有一个名为fa
的项目区域我有一个名为home
的控制器,在我的控制器中我有一个名为index
的动作。< / p>
我发布了我的网站,但是当我输入我的网址时,我看不到我的网站,因为它应该被重定向到mywebsite.com/en/home/index
。如何在MVC Project
我试过这个,但它没有用。
var route = routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
).DataTokens = new RouteValueDictionary(new { area = "fa" });
答案 0 :(得分:2)
你应该使用这段代码:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new {area="fa", controller = "Home", action = "Index", id = UrlParameter.Optional },namespaces: new string[] { "UI.Areas.fa.Controllers"}
).DataTokens.Add("area", "fa");
答案 1 :(得分:1)
您需要为默认路由指定命名空间。由于您有多个HomeControllers,因此需要知道要渲染哪一个。
根据您的评论,您还需要修改默认值。
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { area = "en", controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new string[] { "UI.Areas.en.Controllers" }
);