asp.net-web-api - 标有 JsonIgnore 的属性仍显示在 Web API 的 Swagger UI 文档中

标签 asp.net-web-api swagger swagger-ui

我正在使用 Swashbuckle 包,它将 swagger 与 Web API 项目集成在一起。我想隐藏文档中标记为“忽略”的属性。我尝试使用不同的方法,例如 IgnoreDataMember、DataContract & DataMember、JsonIgnore 或 XmlIgnore,但似乎没有任何方法适用于 swagger ui。

但是,在默认 API 文档中,它按预期工作。这就是我的模型的样子:

public partial class Model : BaseSettingsModel
{
    public string ReceiptTitle { get; set; }

    [IgnoreDataMember]
    public FieldsEnum Fields { get; set; }

    public string DisplayFields { get; set; }
}

最佳答案

从版本 1.3.0 迁移到 1.3.6 将为您解决这个问题。至少 @JsonIgnore@XmlTransient 受到尊重。

对于 JsonIgnore,您需要引入 JSON.net NuGet 包。

关于asp.net-web-api - 标有 JsonIgnore 的属性仍显示在 Web API 的 Swagger UI 文档中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25302835/

相关文章:

c# - Swashbuckle MapType<Type> 不适用于参数

asp.net-mvc - Web API和ASP MVC之间的主要区别是什么

c# - Web API 将输入转换为随机 int

java - 多个微服务的 Swagger 整合

node.js - 在 meteor 应用程序中使用 swagger API 连接服务器端和客户端

node.js - node.js 上 Swagger 的可空字段

asp.net-core - Swagger UI 不会为多部分请求中的某个部分传递内容类型

c# - PHP/ASP.NET MVC Web-Api 有人知道如何使用PHP通过POST调用WEBAPI

c# - 在 Owin 中间件中覆盖响应主体

c# - wcf api 的 Swagger 文档