Как я могу использовать механизмы наследования и swagger в своем API одновременно?
Большая часть моих методов в API реализовано по такой схеме:
[Route("api/[controller]")]
public class SomeController : ApiContriollerBase<SomeRequestModel>
{
public override void Method1() => throw new NotImplementedException();
}
[Produces("application/json")]
public abstract class ApiContriollerBase<TRequest> : ControllerBase
where TRequest : new()
{
TRequest ApiRequest = new TRequest();
ApiResponse ApiResponse = new ApiResponse();
[HttpPost]
public ApiResponse EntryPoint([FromBody] TRequest request)
{
// Do something. Method1(), Method2()...
return ApiResponse;
}
// Some virtual methods
public virtual void Method1() => throw new NotImplementedException();
public virtual object Method2() => throw new NotImplementedException();
}
Когда я пытаюсь использовать swagger, он не может сгенерировать swagger.json и выдает ошибку: "Fetch errorundefined /swagger/v1/swagger.json". Насколько я понимаю swagger не может понять мой механизм запросов. Мне бы не хотелось менять эту схему из-за swagger. Есть ли способ исправить ошибку?