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 }
);
本文探讨了Swagger中控制器Get方法冲突的问题,当一个控制器包含多个Get方法时,会导致Swagger无法正常显示API文档。通过修改WebApiConfig.cs的路由配置,可以解决此问题,确保所有Get方法都能正确展示。
611





