“MapHttpRoute”和“MapRoute”的区别?
为什么使用“MapRoute”作为“默认”路由,而使用“MapHttpRoute”作为“DefaultApi”路由?
routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}" ); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } );
如果您在ASP.NET之上使用Web API,那么它们最终都将在相同的底层ASP.NET路由表上运行 – 但是正确地指出,从用户angular度来看,您会调用两种不同的方法来注册路由。
路由是这样devise的,所以当在ASP.NET之外托pipe时,Web API将不必依赖于System.Web。
请记住,Web API并不在MVC,Web Forms之上,或者就ASP.NET而言。 它可以在Web上下文(ASP.NET)中进行托pipe,但也可以自行托pipe(控制台,WPF等),甚至托pipe在内存中(不使用端口,对轻量级端到端testing非常有用)。
MapRoute
适用于“正常”的ASP.NET MVC控制器,而MapHttpRoute
适用于Web API控制器。
- 我可以在Visual Studio 2008中开发.NET Framework 4吗?
- 使用ASP.Net MVC分页和sorting网格
- Visual Studio 2015不语法高亮剃刀或智能感知
- 从SqlDataReader读取数据
- 如何从NuGet安装EntityFramework 5.0(和其他旧版本)?
- 如何强制netwtonsoft json序列化程序将datetime属性序列化为string?
- 我如何从活动目录获取用户列表?
- ASP.NET Core 1.0 Web API中的简单JWT身份validation
- 检测到ASP.NET网页的冲突版本:指定的版本是“1.0.0.0”,但bin中的版本是“2.0.0.0”