炫意html5
最早CSS3和HTML5移动技术网站之一

C# 在Json序列化时,怎么根据条件序列化为数值或者字符串?

在Json序列化时,怎么根据条件序列化为数值或者字符串?

回答

用Newtonsoft.Json举例:

if(number_to_string)
   new JsonSerializerSettings().Converters
    .Add(new NumberToStringConverter<double>())
    .Add(new NumberToStringConverter<long>())// ....等等
else new JsonSerializerSettings()

Newtonsoft.Json.JsonConvert.SerializeObject(yourObject,settings);

class NumberToStringConverter<T>:Newtonsoft.Json.Converters.CustomCreationConverter<T>
{
    public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
            {
                writer.WriteValue(value.ToString());
            }
}

炫意HTML5 » C# 在Json序列化时,怎么根据条件序列化为数值或者字符串?

Java基础教程Android基础教程