Swagger работает с ограничением версий Web API - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть веб-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, чтобы понять ограничение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...