首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >"MapHttpRoute“和"MapRoute”有什么区别?

"MapHttpRoute“和"MapRoute”有什么区别?
EN

Stack Overflow用户
提问于 2012-08-21 02:14:30
回答 2查看 22K关注 0票数 70

为什么使用"MapRoute“作为”默认“路由,而使用"MapHttpRoute”作为"DefaultApi“路由?

代码语言:javascript
复制
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 }
);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-21 02:33:31

如果您在ASP.NET之上使用Web API,它们最终都将在相同的底层ASP.NET路由表上操作-然而,正如正确指出的那样,从用户的角度来看,您将调用两个不同的方法来注册路由。

路由是这样设计的,这样当在ASP.NET外部托管时,Web就不必依赖System.Web了。

请记住,Web API并不是位于MVC、Web Forms或ASP.NET之上。它可以托管在web上下文(ASP.NET)中,但也可以自托管(控制台、WPF等),甚至托管在内存中(无需端口使用,对于轻量级端到端测试非常有用)。

票数 64
EN

Stack Overflow用户

发布于 2012-08-21 02:27:27

MapRoute是为“普通”Web控制器设计的,而MapHttpRoute是为ASP.NET API控制器设计的。

票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12042853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档