自定义JsonConverterFactory处理可空类型及空值转换的实现问题求助
自定义JsonConverterFactory处理可空类型及空值转换的实现问题求助
各位大佬好!我最近在折腾一个自定义的JsonConverterFactory,核心需求是处理可空类型的JSON转换——说白了就是要把JSON里的空字符串、空数组,全都转成对应可空类型的null值。
之前我参考了社区里的一些思路,拼凑出了一段不完整的代码,现在卡在CanConvert方法的实现上了,想请大家帮忙看看怎么完善,或者整个实现思路有没有需要调整的地方:
public class NullableConverterFactory : JsonConverterFactory { public override bool CanConvert(Type typeToConvert) { return Nullable.GetUnderlyingType(typeToConvert) is } }
我目前还有几个没理清的点:
- 首先,
CanConvert方法里应该怎么写完整的判断逻辑,才能确保这个工厂只处理可空类型? - 接下来,在工厂创建的具体转换器里,要怎么实现把空字符串、空数组转成
null的核心逻辑? - 有没有容易踩坑的边界情况需要注意?比如空对象这类值要不要也纳入转换范围?
麻烦各位有经验的朋友给点建议或者指导,非常感谢!
内容来源于stack exchange
相关产品推荐
相关产品推荐

