.Net之API响应值中枚举处理

💡 原文中文,约3800字,阅读约需9分钟。
📝

内容提要

在迁移项目接口时,发现老项目返回的枚举值需转为字符串。通过修改WeatherForecast类和API方法,使用Newtonsoft.Json处理枚举,配置StringEnumConverter后返回枚举字符串,但影响其他接口。需确保命名空间正确,以避免全局配置影响,建议统一返回值格式。

🎯

关键要点

  • 在迁移老项目接口时,发现枚举值需转为字符串以保持响应格式不变。
  • 创建了一个新的.Net8 Api项目,并定义了SexInfo枚举和WeatherForecast类。
  • 通过修改WeatherForecast类,使用Newtonsoft.Json处理枚举,添加JsonProperty以返回枚举字符串。
  • 同事在其他接口中遇到类似问题,使用了StringEnumConverter,但未能正确返回枚举字符串。
  • 需要在AddNewtonsoftJson中配置StringEnumConverter以确保枚举正确序列化为字符串。
  • 全局配置可能影响其他接口的返回值,需确保命名空间正确以避免问题。
  • 建议统一返回值格式,以减少接口间的不一致性。
➡️

继续阅读