当前位置: 首页 > 科技观察

您不知道只有Get访问器的C#属性是只读属性吗?

时间:2023-03-15 19:25:48 科技观察

本文转载自微信公众号《UP技控》,作者conan5566。转载本文请联系UP技控公众号。之前偷窥问题,有个哥们用Newtonsoft.Json反序列化,发现有数据,但是数据无法序列化成实体。乍一看还真没问题,字符串的数据是存在的。那么问题是什么?解决方法1、我让他复制字符串,用在线工具分析,和实体对应的名字核对一下,看有没有不符的地方。发现还好。2.所以我让他把实体文件发给我。我查了一下,这个名字确实可以。等等,这个属性publicListData{get;}?///

///跟踪信息头///publicclassO{//////业务数据。///[JsonProperty("data")]publicListData{get;}//////状态。///[JsonProperty("status")]publicintStatus{get;}//////////异常消息。///////[JsonProperty("msg")]//publicstringMessage{get;}}所以,我让他去做。{get;}=>{get;set;}问题解决了。总结属性根据使用的访问器分类如下:只有获取访问器的属性称为只读属性。无法为只读属性赋值。只有set访问器的属性称为只写属性。只写属性不能被引用,除非作为赋值的目标。同时具有get和set访问器的属性是读写属性。在属性声明中,get和set访问器都必须在属性主体内声明。使用get访问器来更改对象的状态是一种糟糕的编程风格。