gpt4 book ai didi

c# - 是否可以从 Swashbuckle/Swagger UI 中排除 ASP.NET WebAPI 操作参数?

转载 作者:行者123 更新时间:2023-11-30 18:22:26 26 4
gpt4 key购买 nike

我的实际情况是,我允许在实现自定义参数绑定(bind)的 API Controller 上使用参数绑定(bind)进行依赖注入(inject)。

例如, Controller 操作可能如下所示:

public async Task<IHttpActionResult> GetByIdAsync(Guid id, ICustomerFacade customerFacade)

当我使用 Swashbuckle 生成的 Swagger UI 探索我的 API 时,customerFacade 被指定为实际和必需的资源操作参数。

您知道从生成的 Swagger UI 中排除 Controller 操作参数的方法吗?

注意:我知道解决方法是使用构造函数注入(inject)来注入(inject)依赖项,但我仍然更喜欢能够同时执行构造函数和常规方法依赖项注入(inject)。

最佳答案

我不是很肯定,但我认为您应该将依赖项注入(inject) Controller 构造函数而不是 Get 方法。

因此,您的类(class)将:

private ICustomerFacade _customerFacade;

public MyController(ICustomerFacade customerFacade)
{
_customerFacade = customerFacade;
}

public async Task<IHttpActionResult> GetByIdAsync(Guid id){
return Ok(_customerFacade.getCustomer(id));
}

除非您希望调用您的 api 的客户端负责注入(inject) customerFacade...

关于c# - 是否可以从 Swashbuckle/Swagger UI 中排除 ASP.NET WebAPI 操作参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33937827/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com