首页 > 解决方案 > 如何在 url 中隐藏控制器名称和页面名称

问题描述

在网址中,我得到这样的 http://localhost:50749/Admin/Admin/Dashboard 但我只需要http://localhost:50749

在 route.config 我这样写。

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

标签: asp.net-mvc

解决方案


您需要默认路由:

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

如果默认使用这样写:

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

并且 url 必须是 http://localhost:50749/Admin/


推荐阅读