【问题标题】:Url doesnt point to area index file网址不指向区域索引文件
【发布时间】:2011-12-13 11:29:22
【问题描述】:

我想让我在输入时能够访问我的管理页面:

www.sitename.com/admin

我决定采用该地区的方法。但是它似乎还没有工作。

我已经创建了一个管理区域并更新了管理区域注册中的路线。它看起来像这样:

        context.MapRoute(
        "Admin_default",
        "Admin/{controller}/{action}/{id}",
        new { area = "Admin", action = "Index", id = UrlParameter.Optional },
        new string[] { "skylearn.Areas.Admin.Controllers" }
    );

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // Parameter defaults
            new string[] { "skylearn.Controllers"}
        );
    }

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);
    }

但是,如果我转到我的 url localhost:1337/admin,我的 HomeController 服务的位于我的 HOME 文件夹中的索引文件似乎不会加载。这些文件夹和控制器也位于管理区域内。

任何想法为什么会发生这种情况?

【问题讨论】:

    标签: c# asp.net-mvc-3 routes


    【解决方案1】:

    试试:

        context.MapRoute(
        "Admin_default",
        "Admin/{controller}/{action}/{id}",
        new { area = "Admin", controller = "Home", action = "Index", id = UrlParameter.Optional },
        new string[] { "skylearn.Areas.Admin.Controllers" }
    );    
    

    您没有为您的路线指定默认区域或控制器。

    【讨论】:

    • 恐怕没有改变任何东西。感谢您的意见
    • 我假设你的命名空间中的 skylearn 是正确的,它不是 SkyLearn?您在 RegisterArea 中指定了其他路线吗?如果是这样,您应该将 RegisterArea 例程添加到您的问题中,因为路线的顺序会有所不同。
    • 是的,我也注册了默认路由。该路线虽然使用另一个命名空间。是的,skylearn 是命名空间,但它是用小 s 编写的。我现在添加注册区域
    • 如果我在您的 RegisterArea 方法中正确理解您,您有一个名为“Admin_default”的路由,而在 RegisterRoutes 中您有一个默认路由。我刚刚在我的机器上设置了这个场景,它工作正常,虽然我注意到在“Admin_default”路由中你现在添加了我建议的默认区域,但没有添加默认控制器。你错过了吗?
    • 问题已解决。如果你更新你的答案,我会给你竖起大拇指:D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    • 1970-01-01
    相关资源
    最近更新 更多