Asp.net web api 在布线调整后,Swagger将显示同一方法的两个端点
我们有一个(asp.net)web api,用于在线文档 由于我们希望在每个控制器上有多个HttpGet方法,并将“Get”-方法作为默认值(“/”),因此我们将路由重写为Asp.net web api 在布线调整后,Swagger将显示同一方法的两个端点,asp.net-web-api,swagger,Asp.net Web Api,Swagger,我们有一个(asp.net)web api,用于在线文档 由于我们希望在每个控制器上有多个HttpGet方法,并将“Get”-方法作为默认值(“/”),因此我们将路由重写为 config.Routes.MapHttpRoute("DefaultApiWithAction", "{controller}/{action}"); config.Routes.MapHttpRoute("DefaultApiGet", "{controller}", new { action = "Get" }
config.Routes.MapHttpRoute("DefaultApiWithAction", "{controller}/{action}");
config.Routes.MapHttpRoute("DefaultApiGet", "{controller}", new { action = "Get" }, new { httpMethod = new HttpMethodConstraint(HttpMethod.Get) });
这工作得很好,但是如果我有一个像这样的控制器
public class OrdersController : ApiController
{
public Order Get(string orderId)
{
...
}
}
大摇大摆的样子(好像有两种方法)
我们正在运行以下配置代码:
[assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
namespace OurProject.Api
{
public class SwaggerConfig
{
public static void Register()
{
var thisAssembly = typeof(SwaggerConfig).Assembly;
GlobalConfiguration.Configuration
.EnableSwagger(c => c.SingleApiVersion("V3", "OurProject.Api"))
.EnableSwaggerUi();
}
}
}
是否需要调整路由或招摇过市以将其显示为一种方法(最好是上图中的“/订单”)您使用什么来生成招摇过市规范?虚张声势网,虚张声势扣,NSwag或其他?谢谢你的回复!让我再告诉你。我没有设置它,我现在出去旅行。你好(任何人:)。我们在IDocumentFilters的Swashbuckle文档中使用SwashbuckleLook