0

我在反序列化 json 时尝试更新/更改类中的值。

我需要在 JsonConverter 中执行此操作,但我收到此错误: 状态属性中的 Token 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
        }
    }
4

0 回答 0