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

Integrating MVC3 to webforms - MVC Routing not working

我已按照此 link 的所有步骤进行操作,包括 web.config 更改和添加所需的程序集。
ASP.Net and Webforms in Harmony 我已经将 MVC3 安装到 webforms 项目中并实现了一个控制器并在 Global.asax 的 Application_Start 方法中注册了它的路由。

 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();
    }

}

我正在尝试调用它的操作(即 /Home/Index),但出现 404 Not Found 错误。

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

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

一切正常,但 (Home/Index) 未显示。

您可以通过在您的 Web 项目中添加 Area 来完成此操作,例如 MVC。然后你需要注册 Area in Global class in Global.asax.cs 文件的函数 protected void Application_Start(object sender, EventArgs e) 函数如下

MVCAreaRegistration.RegisterAllAreas(RouteTable.Routes);

现在添加一个控制器,例如 Home 并添加一个视图 Index。在 Index 操作方法和 运行 您的应用程序上放置一个断点。在 url 中键入“.../MVC/Home/Index” 将命中断点。