.net 6 post 接口传递json数据,接口实体对象反序列化导致一些可空字段报错 field is required

发布时间 2023-12-29 10:29:18作者: 温故纳新

1 现象

接口定义

 swagger请求

 正常来讲,string类型默认为null的

2 原因

C#8.0 引入了“可为空引用类型”和“不可为空引用类型”,使我们能够对引用类型变量的属性作出重要声明 

3 解决方法

a) json对象的反序列化对象添加可空修饰符 ?

b) 全局配置

// 关闭不可为空引用类型的属性
builder.Services.AddControllers(options => options.SuppressImplicitRequiredAttributeForNonNullableReferenceTypes = true);

4 测试

 

参考文档

https://blog.csdn.net/q913777031/article/details/113186007