相关疑难解决方法(0)

具有私有setter与get-only-property的属性

C#6.0引入了定义只获取属性的功能:

public ICommand AddCommand { get; }
Run Code Online (Sandbox Code Playgroud)

现在,在定义下面的另一个属性时,ReSharper建议Auto-property可以变为get-only:

private List<Screenshot> Screenshots { get; set; }
Run Code Online (Sandbox Code Playgroud)

此外,ReSharper在定义私人吸气剂时并未说出一句话:

public ICommand AddCommand { get; private set; }
Run Code Online (Sandbox Code Playgroud)

公共get-only属性(例如第一个AddCommand),私有get-only属性(例如Screenshots属性)和public private setter属性(例如第二个AddCommand)之间的区别是什么?

我的WPF应用程序似乎并不关心它的公共属性(UICommand)是否包含私有的setter或者根本没有setter,但肯定必须有区别?

c# wpf mvvm c#-6.0

21
推荐指数
3
解决办法
7088
查看次数

标签 统计

c# ×1

c#-6.0 ×1

mvvm ×1

wpf ×1