Asp.net mvc 4 RouteTable.Routes vs HttpConfiguration.Routes?

Asp.net mvc 4 RouteTable.Routes vs HttpConfiguration.Routes?,asp.net-mvc-4,asp.net-web-api2,asp.net-web-api-routing,Asp.net Mvc 4,Asp.net Web Api2,Asp.net Web Api Routing,我看到Webapi使用GlobalConfiguration中的RouteCollection,MVC使用RouteTable中的RouteCollection 我在这个链接中看到了一个解释: 有人能提供更多的信息或详细的解释吗 谢谢, 山姆山姆 RouteTable是asp.net/System.Web使用的路由的底层结构 使用ASP.NET(Visual Studio中的默认模板)在IIS上运行时,路由将写入routetable,WebHost用于在ASP.NET/System.Web和W

我看到Webapi使用GlobalConfiguration中的RouteCollection,MVC使用RouteTable中的RouteCollection

我在这个链接中看到了一个解释:

有人能提供更多的信息或详细的解释吗

谢谢, 山姆

山姆

RouteTable是asp.net/System.Web使用的路由的底层结构

使用ASP.NET(Visual Studio中的默认模板)在IIS上运行时,路由将写入routetable,WebHost用于在ASP.NET/System.Web和Web API之间填充。在这种情况下,路由将写入RouteTable

但Web API也可以在WCF self host或Owin self host(在控制台应用程序、服务或应用程序代码中托管)中运行。在这些情况下,ASP.NET(或更准确地说)system.web没有被用作托管层。这两台主机不提供路由抽象,WebAPI实现自己的路由

为了保持用户代码在不同主机之间的可移植性,路由被写入一个单独的集合,然后每个主机对其进行不同的使用

另外,这也是使用HttpContext的原因。如果您计划在无IIS主机上运行Web API,则不建议在Web API中使用Current。

Sam

RouteTable是asp.net/System.Web使用的路由的底层结构

使用ASP.NET(Visual Studio中的默认模板)在IIS上运行时,路由将写入routetable,WebHost用于在ASP.NET/System.Web和Web API之间填充。在这种情况下,路由将写入RouteTable

但Web API也可以在WCF self host或Owin self host(在控制台应用程序、服务或应用程序代码中托管)中运行。在这些情况下,ASP.NET(或更准确地说)system.web没有被用作托管层。这两台主机不提供路由抽象,WebAPI实现自己的路由

为了保持用户代码在不同主机之间的可移植性,路由被写入一个单独的集合,然后每个主机对其进行不同的使用

作为旁注,这也是使用HttpContext的原因。如果您计划在非IIS主机上运行Web API,则不建议在Web API中使用Current。

如果您想要比您已经找到的“更多信息”,您能解释一下您在该解释中发现的不足之处,或者您仍然不清楚的地方吗?我不明白“RouteTable版本仅适用于IIS”如果您想要比您已经找到的“更多信息”,您能解释一下您在该解释中发现的不足之处,或者您仍然不清楚的地方吗?我不理解“RouteTable版本仅适用于IIS”