将ASP.NET MVC根应用程序路由到MVC虚拟目录

时间:2011-09-22 14:20:22

标签: asp.net-mvc directory routes virtual

我将MVC应用程序设置为根应用程序。在那个根目录中,我有一个虚拟目录,也是一个MVC应用程序。我需要从根应用程序导航到虚拟目录。第一个障碍是找到存在于另一个命名空间中的控制器,我能够如下所示:

    Dim namespaceControllers() As String = {"ExternalAssemblyName"}

    routes.MapRoute( _
        "virtualroute", _
        "ExternalAssemblyName/{controller}/{action}/{id}", _
        New With {.controller = "testvir", .action = "Index", .id = ""}, _
        namespaceControllers _
    )

    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Home", .action = "Index", .id = ""} _
    )

它正确地找到了控制器,但它仍然试图在根应用程序中找到视图,而不是虚拟目录。如果我将View从虚拟目录移动到根目录,它就可以工作。

1 个答案:

答案 0 :(得分:0)

路线可能很棘手。我不能在没有看到您的应用程序的情况下推荐修复程序(具有更多经验的人可能),但我可以建议安装RouteDebugger tool以帮助解决路由问题。它帮助我多次解决路由问题。

它也可以作为NuGet包使用。

相关问题