使用Json.Net将int转换为bool

我打电话给Web服务和返回的数据为bool字段是0或1但是与我的模型我正在使用System.Bool

使用Json.Net可以将0/1转换成我的模型的布尔值吗?

目前我收到一个错误

Newtonsoft.Json.JsonSerializationException:将值“0”转换为types“System.Boolean”时出错

任何帮助都是极好的!!

结束创build一个转换器

public class BoolConverter : JsonConverter { public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(((bool)value) ? 1 : 0); } public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { return reader.Value.ToString() == "1"; } public override bool CanConvert(Type objectType) { return objectType == typeof(bool); } } 

然后在我的模型

  [JsonConverter(typeof(BoolConverter))] public bool active { get; set; } 

希望这可以帮助别人