0

我一直在尝试让 Blazor 使用 Newtonsoft.Json 'JsonProperty' 属性使用自定义属性名称,但到目前为止还没有找到让它工作的方法。如果我使用模板创建初始 Blazor WebAssembly 并将“WeatherForecast”类修改为...

public class WeatherForecast
{
    public DateTime Date { get; set; }

    public int TemperatureC { get; set; }

    [JsonProperty("sum")] 
    public string Summary { get; set; }

    public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}

即使我可以在响应中看到带有“sum”字段的数据,汇总也不再显示在网格中。有没有人不知道如何让模型在客户端中正确绑定?

4

1 回答 1

1

Blazor在 3.0-beta6 中切换到 System.Text.Json。如果您只想重命名字段,请改用该JsonPropertyName属性:

using System.Text.Json.Serialization;

public class WeatherForecast
{
    public DateTime Date { get; set; }

    public int TemperatureC { get; set; }

    [JsonPropertyName("sum")] 
    public string Summary { get; set; }

    public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}

允许使用 Newtonsoft.Json存在一个未解决的问题。

于 2020-01-28T16:59:27.953 回答