asp.net-mvc-routing – Web API路由和Web API帮助页面:如何避
发布时间:2020-12-16 07:20:07 所属栏目:asp.Net 来源:网络整理
导读:我正在使用不同的父母(例如这些)在我的 Web API Help Page中呈现的重复条目引用相同的方法: GET api/{apiVersion}/v1/Products – Gets all products … GET api/v1/Products – Gets all products … 我有一个Web API页面,其中包含一些这样的路由: config
我正在使用不同的父母(例如这些)在我的
Web API Help Page中呈现的重复条目引用相同的方法:
我有一个Web API页面,其中包含一些这样的路由: config.Routes.MapHttpRoute ( name: "DefaultVersionApi",routeTemplate: "api/{apiVersion}/{controller}/{id}",defaults: new { id = RouteParameter.Optional } ); config.Routes.MapHttpRoute ( name: "DefaultApi",routeTemplate: "api/{controller}/{id}",defaults: new { id = RouteParameter.Optional } ); 我原以为这个路由会使“v1”成为可选项,所以上面的派生文档是不可取的. (侧边栏:去api /产品肯定不起作用,所以我不确定这有什么问题.我错过了什么?) 看来真正的问题是Web API帮助页面正在不正确地读取路由,因为我认为v1和{apiVersion}不应该同时出现在同一个动作中.我在这里错过了什么? 解决方法
尝试使用属性路由,安装nuget包
Install-Package Microsoft.AspNet.WebApi.WebHost 在WebApiConfig.cs中启用属性路由 public static class WebApiConfig { public static void Register(HttpConfiguration config) { // Attribute routing. config.MapHttpAttributeRoutes(); // Convention-based routing. config.Routes.MapHttpRoute( name: "DefaultApi",defaults: new { id = RouteParameter.Optional } ); } } 然后在Controller的方法中使用属性Route [Route("~/api/v1/Products")] [HttpGet] public List<Product> Products() {} [Route("~/api/v2/Products")] [HttpGet] public List<Product> V2Products() {} 在您将获得的文档中
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何让ASP.NET MVC遵守我的customErrors设置
- asp.net-mvc – 如何防止用户导航回上一页?
- 当InternalsVisibleToAttribute特性遭遇"强签名"
- Asp.Net MVC 5 Owin Twitter Auth throwing 401 Exception
- asp.net-mvc – 确定是否在布局页面中调用了RenderSection(
- asp.net – 没有找到WebResource.axd
- asp.net-mvc – DisplayFor和ValueFor之间的区别
- asp.net – 下拉列表和字段验证引起了骚乱
- asp net2 0 上传大容量文件第三方控件radupload
- asp.net-mvc-2 – ASP.NET MVC 2显示名称DataAnnotion from
推荐文章
站长推荐
- asp.net-mvc – 如何在发布期间跳过文件夹上的删
- asp.net-mvc – asp.net mvc:如何模拟Url.Conte
- asp.net – CustomErrors vs HttpErrors – 一个
- asp.net-mvc – Unity和Random“索引超出了数组的
- 在asp.net应用程序中使用Quartz.Net
- asp.net-mvc-4 – 在控制器的新窗口中打开mvc视图
- asp.net-mvc – 使用ModelState.Remove处理Model
- HttpClientFactory与Steeltoe结合来完成服务发现
- 会员资格,SimpleMembership,ASP.NET身份之间有什
- ASP.Net Cookieless如何工作?
热点阅读