c# - 如果我需要自定义 getter/setter,我可以省略字段创建吗?

标签 c#

我可以写出这么漂亮直接的代码:

 public int Delta { get; private set; }

现在我只想添加一个调用 OnPropertyChanged("Delta");

这是我知道的唯一方法:

public int Delta { get { return _delta; } private set
{
    _delta = value; OnPropertyChanged("Delta"); }
}
private int _delta;

额外代码太多了!为什么要在这种情况下引入字段?你能缩短这段代码吗?我想要类似的东西,但它不起作用:

 public int Delta { get; private set { OnPropertyChanged("Delta"); } }

最佳答案

不,您不能使用自动属性执行此操作。自动属性是字段属性的简写语法。他们几乎没有其他能力。任何自定义代码执行都需要一个完整的属性。

关于c# - 如果我需要自定义 getter/setter,我可以省略字段创建吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8317136/

相关文章:

c# - 如何强制我的 gRPC 客户端打开到服务器的多个连接?

c# - 比较自定义类型

c# - 让 API 环绕接口(interface)的目的

c# - 尝试使用 Automapper 将字典映射到对象

c# - 在 JsonConvert.DeserializeObject 中反序列化对象时出现意外标记

c# - 当其他单元格更改时更新 DataGrid 中的单元格

c# - 使用反射通过对象递归并打印树

c# - 难倒在 MVC MEF 应用程序上

c# - 将 stdout/stderr 从 .NET 应用程序中嵌入的 Python 重定向到文本框

c# - 关于 HL7 Listener 的几个问题