如何让ASP.NET MVC为区域设置默认的Controller和Action?

111*_*110 3 c# asp.net-mvc routing areas

我创建了一个带有区域的新ASP.NET MVC项目,我试图将控制器操作设置为默认控制器操作,如果用户访问该区域.

我添加了一个名为"登录"的区域Areas/Login/,我添加了LoginController.

我试图设置此控制器在用户导航到网站时被调用.如果我输入浏览器www.test.com/Login/Login但我不知道如何设置路由global.asax以指向此控制器作为默认值,我可以访问它.

我如何在ASP.NET MVC中执行此操作?

Kei*_*ith 5

创建区域时,MVC是否[AreaName]AreaRegistration在Areas/[AreaName]文件夹下创建了类?在那里你会发现看起来与此类似的区域注册.controller =将defaults参数的一部分修改为默认情况下要使用的控制器名称(Login):

    public override void RegisterArea(AreaRegistrationContext context)
    {
        context.MapRoute(
            "Login_default",
            "Login/{controller}/{action}/{id}",
            new { controller = "Login", action = "Index", id = UrlParameter.Optional }
        );
    }
Run Code Online (Sandbox Code Playgroud)