码字,杂谈

.NET Model名称转换

模型中为了统一命名,所以都是用首字母大写的格式。但是返回的Json格式统一都为小写格式。所以就需要用到.NET提供的一个强大且好用的声明属性:JsonProperty,这样,就可以很方便的转换我们需要使用的名字。

public class Model1
{
    [JsonProperty("id")]
    public int Id { get; set; }
    [JsonProperty("key")]
    public string Key { get; set; }
    [JsonProperty("value")]
    public string Value { get; set; }
}

这样在模型上面添加希望的名字之后,在返回的模型对象中,其Json的key就是对应额上面定义的小写字符串了。

使用该属性需要在头文件引入Newtonsoft.Json,是一个JsonPropertyAttribute类,继承自Attribute,它是.NET封装好的一个属性类,其功能是:在创建一个新的实例对象时,可以将实例中的名字指定为某一个字符串。

*** 2020.4.27更新

.net core 3.x之后,好像上面这个属性已经不好用了,如果使用的话需要重新配置。3.x开始所有的json使用System.Text.Json来管理,所以使用它里面的属性JsonPropertyName即可解决。

《.NET Model名称转换》

嗯,就像这样。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注