2011-01-31 108 views
5


是否有可能(以及如何)在VB 2010中创建只读自动属性?VB.net自动属性 ​​- 只读?

Public Class Foo 
    Public Property Value As Integer 
    Public Sub New() 
     _Value = 123 
    End Sub 
End Class 

问题是用户可以写入属性。 thanx

+0

我不明白你的问题是什么。在猜测中,我认为你只想允许读取不写入它的值。 – 2011-01-31 14:44:42

回答

4

不,VB.Net不支持只读自动属性。这个背后的推理(特别是Jonathan Aneja提出的评论)看到这个MS Connect问题。

0

thinkthing,

您可以创建一个代码片段来添加一个通用属性。

http://msdn.microsoft.com/en-us/library/ms165392(v=vs.90).aspx

当心,视觉工作室已经改变了我们建立的属性的基本途径,用get集,现在只需要一行与理解置位。如果您确实需要内置逻辑,则可以构建完整的getter和setter。我在这里是指你: http://msdn.microsoft.com/en-us/library/dd293589.aspx

,在这里,一个SO讨论关于类似的讨论: Using snippets to make Class properties in VB.net. prop only gives "property() as " Whats up?