小编Joa*_*ton的帖子

我可以在MVC站点下的虚拟目录中使用传统的ASP.NET Web应用程序吗?

这是多年来一直在努力的情景.我在(比如)www.MySite.co.uk上有一个父asp.net Web应用程序,在它下面我有多个虚拟目录中的子(客户)站点,例如www.MySite.co.uk/Client1等.所有站点(父站点)和子虚拟目录)是使用.NET 4.5的传统asp.net Web表单应用程序,一切正常.

昨天,我将我的父网站更新为asp.net MVC 5 Web应用程序(由自由职业者为我开发).我只更新了父网站,它打破了我所有的子网站.作为紧急修复,我已经在我的父MVC站点中重命名了web.config文件,显然这已经破坏了我的父站点,但至少客户端(子站点)网站​​再次运行.

在根应用程序(MVC之一)中显然有一个设置,webforms网站正在继承它们并且它们不喜欢它.

在我的研究中,我遇到了这个:http://forums.iis.net/t/1200821.aspx?创建+virtual+directory+for+ASP+NET+website+under+MVC+应用程序,所以我想知道是否设置问题是我的MVC RouteConfig.cs文件.我的自由职业者设置它以便我的aspx路径的旧链接仍然可以工作(即映射到我的新视图).我还不熟悉代码,但这里有一段代码:

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

        routes.MapRoute(
            name: "HelpRedirect",
            url: "Help/{*route}",
            defaults: new { controller = "Help", action = "ViewRedirect" }
        );

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

        routes.MapRoute(
            name: "ContactRoute",
            url: "Contact.aspx",
            defaults: new { controller = "Contact", action = "Index", id = UrlParameter.Optional }
        ); …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net asp.net-mvc asp.net-mvc-5

10
推荐指数
1
解决办法
995
查看次数

标签 统计

.net ×1

asp.net ×1

asp.net-mvc ×1

asp.net-mvc-5 ×1

c# ×1