我正在使用Asp.net core 5
,由于某种原因我停止使用System.text.Json
,我使用了NewtonSoft
,并将所有名称空间更改为[JsonIgnore]
,但我的问题是,我忽略的属性仍然显示在swagger输出中。
using System;
using Newtonsoft.Json;
public class AddEmployeeDto
{
public Guid Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
[JsonIgnore]
public int EmployeeType { get; set; }
}
这是招摇输出:
在此处输入图像描述
由于Sytem.text.Json
已成为Asp.Net Core
的默认Serialize
工具,Swagger
的标准版本也与之兼容,改变它,就像你可能已经应用的这个改变,services.AddControllers().AddNewtonsoftJson();
您必须从Nuget
:安装软件包
Swashbuckle.AspNetCore.Newtonsoft
并按如下方式将其注册到您的服务容器中,以解决您的问题
services.AddSwaggerGenNewtonsoftSupport();