Как мне написать частные автоматические свойства набора в VB 10?

Asked
Viewd7318

3 ответов

5

Я не думаю, что это возможно (пока).

См. эту ссылку в MSDN.
В приведенной выше статье есть даже ссылка на еще одну о смешанные уровни доступа.

Я нашел это в Microsoft Connect, поэтому они думают (если это будет для VS2010, другой вопрос).

  • Хотелось бы услышать, как будут выглядеть новые автоматические реквизиты для смешанного уровня доступа!

    Shimmy Weitzhandler09 июня 2009, 09:28
  • Если вы прочитаете обе статьи, то увидите, что автоматические свойства смешанного уровня доступа не будут доступны в VS2010

    albertjan09 июня 2009, 10:49
  • В последней опубликованной вами ссылке говорится о свойстве ReadOnly, это свойство «без» набора, а не частный набор. Так что в vs2010 до сих пор нет автоматических свойств смешанного уровня доступа.

    albertjan10 июня 2009, 06:39
  • Вы должны установить переменную somwhere, но эквивалентом свойства только для чтения в C # является общедоступная строка Property {get; } Что невозможно, так как это будет в vb. В текущем синтаксисе vb autoprop невозможно создать частный или внутренний набор. Если вы прочтете статью в своем последнем посте и увидите предложенное решение, вы увидите, что все так, как я сказал.

    albertjan10 июня 2009, 10:32
  • Разве свойство только для чтения в vb не эквивалентно закрытому набору в C #? Вы должны иметь возможность где-нибудь установить переменную, не так ли? И поскольку мы говорим об автоматических свойствах, являющихся свойствами без частного резервного поля (или, скорее, «с тем, которое создается на лету»).

    fretje10 июня 2009, 07:15
5

Согласно этой статье MSDN , вы не может:

Реализуемые автоматически свойства удобно и поддерживает многие сценарии программирования. Однако там это ситуации, в которых вы не можете использовать автоматически реализуемое свойство и должно вместо этого используйте стандартный или расширенный, синтаксис свойства.

Вы должны использовать расширенный синтаксис определения свойства, если хотите выполнить одно из следующих действий:

[...]

  • Укажите разные специальные возможности для процедура получения и установки. За например, вы можете захотеть сделать Установить процедуру Private и получить Процедура Public.
9

Вот так:

 Private Thingy As Integer
Property Thing() As Integer
    Get
        Return Thingy
    End Get
    Private Set(ByVal value As Integer)
        Thingy = value
    End Set
End Property
 

Свойство Auto в VB10

 Property PartNo As Integer = 44302
 

Но с частным набором все еще невозможно сделать в vb, даже в VB10, см. здесь:

Из MSDN (как сказал Джон):

Определения свойств, требующие Стандартный синтаксис:

  • Укажите разные специальные возможности для процедура получения и установки. За например, вы можете захотеть сделать Установить процедуру Private и получить процедура Public.
  • @Shimmy, задавайте это как вопрос сам по себе, и у вас больше шансов получить правильный ответ

    Abel12 апреля 2010, 15:16
  • Как мне написать частный набор автоматических свойств в VB 10?

    Shimmy Weitzhandler09 июня 2009, 09:24
  • Шимми имеет в виду автоматические свойства ... Я не думаю, что это один из них.

    fretje09 июня 2009, 09:16