将MVC3集成到webforms - MVC路由不起作用

将MVC3集成到webforms - MVC路由不起作用

问题描述:

我已经遵循了此链接上的所有步骤,包括web.config更改和添加所需的程序集。
ASP.Net and Webforms in Harmony 我已经将MVC3安装到webforms项目中,并实现了一个控制器并在Global.asax的Application_Start方法中注册了它的路由。将MVC3集成到webforms - MVC路由不起作用

routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

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

这里是控制器

public class HomeController : Controller 
{ 
    // 
    // GET: /Default1/ 

    public ActionResult Index(int? id) 
    { 
     ViewData["Message"] = "Hello from Home controller"; 
     return View(); 
    } 

} 

我试图调用它的动作(即/首页/指数),但得到404 Not Found错误。

注册其他.aspx表单的路由工作正常。

routes.Add("Home", new Route("Home", new RoutingHandler("/Default.aspx"))); 

一切工作正常,但(首页/索引)没有显示出来。

您可以通过在您的web项目中添加Area来完成此操作,例如MVC。然后,你需要注册一个像下面

MVCAreaRegistration.RegisterAllAreas(RouteTable.Routes);

现在添加一个控制器,例如Home并添加视图AreaGlobalGlobal.asax.cs文件的功能protected void Application_Start(object sender, EventArgs e)功能说Index。在索引操作方法上放置一个断点并运行应用程序。在URL类型“.../MVC/Home/Index”中,中断点将被击中。