You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.Net Core中NSwag生成客户端时DTO可空类型处理异常

NSwag生成客户端时可空类型Null值被忽略的问题

我在ASP.Net Core项目中使用NSwag生成客户端代码,整体运行正常,但存在一个问题:当DTO中的可空类型值为Null时,会在响应中被忽略。

我定义的类如下:

class ClassA {
    public int Test { get; set; }  
}

class ClassB {
    public string? Name { get; set; }
    public ClassA? SomeProperty { get; set; }
}

生成客户端后,这两个属性都会被自动添加如下特性:

[Newtonsoft.Json.JsonProperty("someProperty", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]

我尝试了以下方法但均未解决问题:

  • 在类中手动设置NullValueHandling = Newtonsoft.Json.NullValueHandling.Include,但生成代码时会被覆盖
  • 实现分部类来修正NullValueHandling,修改仍被忽略
  • 在openApiToCSharpClient配置对象中尝试多种相关设置,没有效果

补充说明:ClassA也应为可空类型。

内容的提问来源于stack exchange,提问作者Febertson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 06:32:34