【发布时间】:2012-12-29 19:29:12
【问题描述】:
注意:这不是VB.NET equivalent of C# property shorthand? 的重复。 这个问题是关于如何在 VB 自动属性的 getter 和 setter 上拥有不同的访问权限;例如 public getter 和 private setter。 那个问题是关于自动属性的语法(并没有提到这个问题)。
我正在尝试将自动属性(public getter 和 private setter)从 C# 转换为 VB.NET。
但转换后 VB.NET 维护一个私有字段。
C#代码
class DemoViewModel
{
DemoViewModel (){ AddCommand = new RelayCommand(); }
public ICommand AddCommand {get;private set;}
}
与code converter 等效的VB.NET 是
Class DemoViewModel
Private Sub New()
AddCommand = New RelayCommand()
End Sub
Public Property AddCommand() As ICommand
Get
Return m_AddCommand
End Get
Private Set
m_AddCommand = Value
End Set
End Property
Private m_AddCommand As ICommand
End Class
VB.NET 代码生成私有支持字段。
是否可以在源代码(如 c#)中去掉这个后退字段?怎么样?
如果没有这个特性,VB.NET 源码就会有很多这样的冗余。
【问题讨论】:
-
我想忽略可能的重复。我错过了私人二传手的信息。
标签: vb.net