【问题标题】:Change controller and action name in ASP.NET MVC routing在 ASP.NET MVC 路由中更改控制器和操作名称
【发布时间】:2012-09-29 04:39:31
【问题描述】:

我创建了一个区域 -> 管理员。

在我的注册区,我有:

public override void RegisterArea(AreaRegistrationContext context)
{
    context.MapRoute(
        "Admin_default",
        "Admin/{controller}/{action}/{id}",
        new { action = "Index", id = UrlParameter.Optional }
    );
}

我改成:

context.MapRoute(
    "jojo",
    "jojo/{controller}/{action}/{id}",
    new { action = "Index", id = UrlParameter.Optional }
);

现在,如果您输入一个 URL,xxx/jojo/AdminHome/Index,它可以完美运行,但是我如何才能更改控制器和操作名称,直到用户找不到它进入管理区域。请注意,例如,我不想将控制器名称更改为 jojo。

有可能吗?

【问题讨论】:

  • 你的问题非常不清楚。
  • 我的意思是如何将我的控制器和动作名称从真实(类名)更改为假名,直到黑客无法识别真实名称
  • 这样做没有意义。默默无闻的安全通常是无用的。相反,请使用身份验证和 SSL。 (并且不允许 XSS 或 SQL 注入)

标签: asp.net-mvc-3 razor


【解决方案1】:

你可以这样做:

context.MapRoute(
    "jojo",
    "jojo/jojo/{action}/{id}",
    new { controller="RealController", action = "Index", id = UrlParameter.Optional }
);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-27
    • 1970-01-01
    • 2014-11-18
    • 2011-03-01
    • 2017-01-04
    相关资源
    最近更新 更多