我目前在我的应用程序中使用Json.net来消费json。
我使用的API为枚举类型发送特定的字符串格式,例如:
对于类型为TemperatureType的枚举,其值为fahrenheit、Celcius
json的值是: {"result":["TemperatureType_fahrenheit","TemperatureType_Celcius"]}
我想使用转换器直接将其管理,以获取IList,但也适用于其他枚举类型。
有人有想法吗?
我尝试使用自定义JsonConverter:
问题出在GetType属性上,因为我没有指定所需类型的参数和命名空间。
对于类型为TemperatureType的枚举,其值为fahrenheit、Celcius
json的值是: {"result":["TemperatureType_fahrenheit","TemperatureType_Celcius"]}
我想使用转换器直接将其管理,以获取IList,但也适用于其他枚举类型。
有人有想法吗?
我尝试使用自定义JsonConverter:
if (reader.TokenType == JsonToken.String && reader.Value != null)
{
string value = reader.Value.ToString();
var splitValues = value.Split('_');
if (splitValues.Length == 2)
{
var type = Type.GetType(splitValues[0]);
return Enum.Parse(type, splitValues[1]);
}
}
问题出在GetType属性上,因为我没有指定所需类型的参数和命名空间。
{"
吗?