青菜仟

您现在的位置是:综合资讯>程序解决方案

综合资讯

WebAPI 使用Swagger只能有一个Get解决方案

2020-02-14 程序解决方案 39
青菜仟推荐说:Swagger是一个规范且完整的框架,提供描述、生产、消费和可视化RESTful API,它是为了解决Web API生成有用文档和帮助页的问题。Swagger默认一个controller只能有一个Get方法,否则就会冲突导致一个都显示不出来
Swagger默认一个controller只能有一个Get方法,否则就会冲突导致一个都显示不出来


如果 启用 SwaggerConfig.cs 的ResolveConflictingActions 那么只会显示第一个get


该问题可以通过修改WebApiConfig.cs 默认路由配置解决


            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
 
           //修改为
 
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );