У меня есть веб-API, в конфигурацию которого добавлено ограничение управления версиями, например:
var constraintResolver = new DefaultInlineConstraintResolver
{
ConstraintMap =
{
["apiVersion"] = typeof(ApiVersionRouteConstraint)
}
};
config.MapHttpAttributeRoutes(constraintResolver);
config.AddApiVersioning();
Затем в контроллере вы можете использовать ограничение:
[ApiVersion("1.0")]
[RoutePrefix("api/v{version:apiVersion}/calendar")]
public class CalendarController : ApiController
{
[HttpGet]
[Route("nextworkingday")]
public IHttpActionResult GetNextWorkingDay(DateTime? date)
{
return Ok();
}
}
Это прекрасно работает вAPI, но Swagger не найдет ни одного контроллера.Мой swagger / docs / v1 будет выглядеть так:
{"swagger":"2.0","info":{"version":"v1","title":"SwaggerTest"},"host":"localhost:24460","schemes":["http"],"paths":{},"definitions":{}}
Как настроить Swagger, чтобы понять ограничение?