我在反序列化json时试图更新/更改类中的值。
我需要在JsonConverter中执行此操作,但出现此错误: 状态为Property的令牌PropertyName将导致无效的JSON对象。路径“ [0]”。
这是我的班级
[JsonConverter(typeof(MyConverter))]
public class MyMetaData
{
[JsonProperty("id")]
public string id { get; set; }
[JsonProperty("number")]
public string number { get; set; }
[JsonProperty("stock")]
public int stock { get; set; }
}
这是JsonConverter MyConverter
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
var jObj = JObject.Load(reader);
var artId = (string)jObj["id"];
int myNewStockValue = StockRepository.Get(artId);
return new MyMetadata() {
id = artId,
number = jObj["number"],
stock = myNewStockValue
}
}