【问题标题】:Routing problems from area to layout MVC 5从区域到布局 MVC 5 的路由问题
【发布时间】:2020-09-12 06:37:42
【问题描述】:

我的“Equipe”区域到外部的路由问题。我向我们解释:

我有一个名为“Equipe”的区域,我可以从主页上的布局访问:

_Layout.cs:

<li class="nav-item">
   <a class="nav-link" href="Home/Equipe">Equipe</a>
</li>

一旦我点击一切都很好。我在这个“Equipe”视图中选择了另一个选项,所以我进入了这个工作正常的地址(我的“Equipe”区域内的控制器):

如果我点击布局选项“Equipe”,我希望看到“/Home/Equipe”页面。而不是这个我有一个错误:

我猜是我的路由(到外面的区域)有问题,但我不知道应该如何配置以重定向到好的视图。

这是我的 RouteConfig.cs:

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

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }

EquipeAreaRegistration.cs:

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

有人可以帮帮我吗? :) 提前感谢路由的事情对我来说还是有点难以理解。

【问题讨论】:

    标签: c# asp.net-mvc asp.net-mvc-5 asp.net-mvc-routing


    【解决方案1】:

    你可以尝试改变你的参考路径如下..

    <li class="nav-item">
     <a class="nav-link" href="~/Home/Equipe">Equipe</a>
    </li>
    

    【讨论】:

    • 这是有效的 :) 天哪,这太简单了,非常感谢。你能解释一下为什么它有效吗?我想我应该在我的 RouteConfig.cs 上添加一条新路线 ^^
    • ~ 将充当应用程序的根,如果您单击导航链接,它应该从根导航到任何页面。如果它工作没有任何问题,请接受这个作为答案或让我知道是否有任何问题
    • 非常感谢,这对我来说很清楚!它正在工作:) +1
    猜你喜欢
    • 1970-01-01
    • 2012-08-03
    • 1970-01-01
    • 1970-01-01
    • 2018-05-31
    • 1970-01-01
    • 2016-08-05
    • 1970-01-01
    • 2011-07-03
    相关资源
    最近更新 更多