微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc – ASP.NET MVC4,带有webforms Default.aspx作为起始页面

我有一个ASP.NET MVC4应用程序,其中包含在Global.asax.cs中定义的以下路由.应用程序的起始页面是从Home控制器的操作方法Index()返回的Index.cshtml视图.然后,我添加一个将Default.aspx作为起始页面的旧版ASP.NET WebForms应用程序.如何将此Default.aspx页面作为此集成MVC WebForms应用程序的起始页面

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

            routes.MapRoute(
                "Default","{controller}.mvc/{action}/{id}",new { action = "Index",id = "" }
              );


              routes.MapRoute(
              "Root","",new { controller = "Home",action = "Index",id = "" }
            );


        }

解决方法

在Global.asax中尝试以下操作:

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

    // Web Forms default
    routes.MapPageRoute(
        "WebFormDefault","~/default.aspx"
    );

    // MVC default
    routes.MapRoute(
        "Default",// Route name
        "{controller}/{action}/{id}",// URL with parameters
        new { controller = "Home",id = UrlParameter.Optional }  // parameter default
    );
}

另外我认为你不需要认路由的.mvc部分.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐