【问题标题】:How to make an alias in the url of asp.net MVC如何在 asp.net MVC 的 url 中创建别名
【发布时间】:2012-01-03 12:58:26
【问题描述】:

这是我的 URL 网站:“www.mysite.com”。如果我想登录以获得管理员权限,我必须去:“www.mysite.com/Account/LogOn”。

大家可以告诉我,我怎样才能只使用“www.mysite.com/administrator”来登录我的站点的管理员级别。

【问题讨论】:

    标签: c# asp.net asp.net-mvc url


    【解决方案1】:

    您可以在管理员控制器中的 Index 操作上设置 Authorize 属性,因此如果有人转到 /Admininistrator/Index 或 /Administrator,那么他们将被重定向到登录页面,然后一旦登录回管理页面。

    【讨论】:

    【解决方案2】:

    您正在寻找的是RouteCollection.MapRoute() 方法来定义您的自定义路线。像这样就足够了:

    routes.MapRoute(
        "Admin", // Route name
        "Administrator", // URL with parameters
        new { controller = "Account", action = "LogOn" } // Parameter defaults
    );
    

    它的作用是通过LogOn 操作将www.mysite.com/adminsistrator 转换为您的Account 控制器。

    【讨论】:

    • 你能告诉我,我可以把这段代码放在我的项目中的什么地方吗?
    • 您将它放在 global.asax 文件的 Application_Start() 方法中。应该已经有默认路由了,所以在下面添加代码。
    • 我输入时出错(“/”应用程序中的服务器错误。找不到资源。)。这是我的 Application_Start():protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RegisterRoutes(RouteTable.Routes); routes.MapRoute( "Admin", // Route name "Administrator", // URL with parameters new { controller = "Account", action = "LogOn" } // Parameter defaults ); }
    • 把它放在你的 RegisterRoutes() 方法中。 “路线”不是类。
    • 有人知道这个问题吗?谢谢。
    猜你喜欢
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-17
    • 2011-02-18
    • 1970-01-01
    • 2012-03-19
    • 2014-02-19
    相关资源
    最近更新 更多