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