gpt4 book ai didi

c# - MVC WebAPI 中的 MapRoute 或 MapHttpRoute

转载 作者:行者123 更新时间:2023-11-30 16:06:54 27 4
gpt4 key购买 nike

由于WebApi路由映射可以通过MapHttpRoute来完成:

            myConfig.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);

我是否还需要像这样使用 MapRoute 来映射路线:

            RouteTable.Routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
  • 第一个问题:如果我错了请纠正我。我认为 MapRoute 只是为了支持 MVC 页面,例如帮助页面等等...所以如果我不这样做我的 Api 有任何 MVC 页面,我还需要实现吗routes.MapRoute部分?

  • 第二个问题:如果我需要将任何 mvc 页面添加到我的 Api(即帮助页面),可以通过 MapHttpRoute

最佳答案

第一个问题

如果你不使用 MVC 你不需要 MapRoute

第二个问题

没有。 MapHttpRoute 将仅针对从 ApiController 派生的类中的操作方法(或 IHttpController 的实现,但大多数情况下这是一个高级场景,您将从 ApiController 派生)。

另一方面,查看命名空间足够直观。

MapRoute 是 RouteCollectionExtensions 类的一个方法,它位于 System.Web.Mvc 命名空间中,参见 this了解更多信息

MapHttpRoute 是 HttpRouteCollectionExtensions 类的一种方法,它位于 System.Web.Http 命名空间中,请参阅 this了解更多信息

这里System.Web.Http与WebAPI相关。

关于c# - MVC WebAPI 中的 MapRoute 或 MapHttpRoute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31601102/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com