возможно (и как) сделать свойство только для чтения в VB 2010?
Public Class Foo Public Property Value As Integer Public Sub New() _Value = 123 End Sub End Class
Проблема в том, что пользователи могут писать в собственность.Thanx
Теперь поддерживается в VB14 (Visual Studio 2015 и более поздних версиях):
Public Class Foo Public ReadOnly Property Value As Integer = 123 End Class
См. https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-VB-14#read-only-auto-properties
В более ранних версиях вам необходимо создать вспомогательное поле.
Нет, VB.Net не поддерживает автоматические свойства только для чтения. См. Эту проблему MS Connect по этой причине (в частности, комментарий Джонатана Анеджи).
Нет, невозможно .Вам нужно будет создать явное вспомогательное поле.
thinkthing,
вы можете создать фрагмент кода для добавления универсального свойства.
http://msdn.microsoft.com/en-us/library/ms165392(v=vs.90).aspx
Помните, что Visual Studio изменила базовый способ построениясвойства, с набором get, и теперь требуется только одна строка с понятным набором get.Полный геттер и сеттер могут быть построены, если вам нужна встроенная логика.Я отсылаю вас сюда: http://msdn.microsoft.com/en-us/library/dd293589.aspx
и здесь, к обсуждению SO, касающемуся аналогичного обсуждения: Использование фрагментов для создания свойств класса в VB.net.prop только дает "property () как" Что происходит?