![](/img/trans.png)
[英]Multiple versioning URL not working in Swashbuckle.AspNetCore 5.0.0rc
[英]Swashbuckle.AspNetCore (5.0.0-rc5) ignoring public fields
首先,这在 Swashbuckle.AspNetCore v4 中运行良好。 因此,鉴于此模型和端点;
public class TestRequest
{
public string test1 { get; set; }
public string test2;
}
[HttpPost]
public void Post([FromBody] TestRequest value)
{
}
Swagger 只显示;
{
"test1": "string"
}
作为示例 TestRequest 值。
这种行为现在是有意的吗? 有没有办法通过设置或过滤器来改变这个? 我有大量仅使用字段的导入服务。 (由 dotnet-svcutil 生成,这很常见)
好的,根据@Flydog57 的建议自行解决,我发现新的 Swashbuckle.AspNetCore 正在通过 Newtonsoft 使用 MS json.net。
所以在https://github.com/domaindrivendev/Swashbuckle.AspNetCore 上第十次阅读 git readme
我发现有一种方法可以将 json 序列化程序恢复为 Newtonsoft。 首先(从 5.0.0-rc5 版本开始)安装这个包;
Install-Package Swashbuckle.AspNetCore.Newtonsoft -Version 5.0.0-rc5
然后在 Start.ConfigureServices 中告诉 Swashbuckle 使用;
services.AddSwaggerGenNewtonsoftSupport();
现在,您会发现所有这些公共“字段”都重新出现在您的 swagger 页面中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.