【发布时间】:2022-04-02 23:08:39
【问题描述】:
我使用的是 Swasbuckle 5.6。
我的控制器有一个从第三方库继承的方法,该方法在公司范围内使用。
[ProducesResponseType(typeof(HealthCheckActionResult), (int)HttpStatusCode.OK)]
public HealthCheckActionResult Get()
{
return new HealthCheckActionResult(healthCheckService, healthCheckOptions);
}
只要将该方法添加到我的控制器,我就会看到 Swagger UI 如何使用大量 CLR 内部类型来膨胀其架构定义:
当用于快速 API 测试时,这个庞大的架构会导致 UI 经常冻结。
我尝试了https://stackoverflow.com/a/61313313/217823 的答案,但它不起作用,因为 SchemaRepository 键不包含那些不需要的数据类型的完整命名空间名称。
假设我无法控制 HealthCheckActionResult 类(它来自第三方库),什么是摆脱它给 Swagger 架构带来的所有臃肿的正确方法?
【问题讨论】:
-
你解决过这个问题吗?
-
@Yeronimo 是的,我做到了。在下面添加了我的解决方案作为答案。
标签: asp.net-core swagger swashbuckle