2011-09-23 3 views
3

Есть ли способ, по которому я могу публиковать свойства в одной строке в VB.NET, как я могу, на C#? Я получаю кучу ошибок каждый раз, когда я пытаюсь переместить все в одну строку.Открытое свойство VB.NET по одной строке

C#:

public void Stub{ get { return _stub;} set { _stub = value; } } 

VB.NET

Public Property Stub() As String 
    Get 
     Return _stub 
    End Get 
    Set(ByVal value As String) 
     _stub = value 
    End Set 
End Property 

Благодаря

EDIT: Я должен уточнить, я использую VB 9.0.

+0

[VB.net эквивалент C# собственности стенографических?] (Http://stackoverflow.com/questions/460027/ vb-net-equ-of-c-property-стенография) покрывает ответ - эквивалент доступен с VB10. –

+1

Да, вы можете использовать collan (:) для нескольких строк в одной строке. –

+1

@djacobson: Не совсем то же самое, что OP фактически не использует автоматически реализованные свойства в указанном коде ... –

ответ

10

Вы можете использовать автоматически реализованы свойства как в VB 10 и C#, оба из которых будет короче, чем C# вы показали:

public string Stub { get; set; } 

Public Property Stub As String 

Для нетривиальных свойств это звучит, как вы могли получить прочь с проставлением все на одной линии в VB - но потому, что это немного более многословным, я подозреваю, что вы в конечном итоге с очень длинной линии, вредя читаемость ...

+0

Похоже, мне нужно использовать VB версию 10.0 для этого (что я не указывал или даже не знал, что использую). Спасибо хоть. –

+0

@Fred: Верно, отредактирован, чтобы сделать ответ более ясным, спасибо. –

3

Да, вы можете

Public Property Stub() As String : Get : Return _stub : End Get : Set(ByVal value As String) :_stub = value : End Set : End Property 

, и вы можете даже сделать его короче и вообще не читаемым ;-)

Public Property Stub() As String:Get:Return _stub:End Get:Set(ByVal value As String):_stub = value:End Set:End Property 
+1

и да это выглядит глупо ;-) – chrissie1

+0

Ничего себе, выглядит плохо, но, по крайней мере, это не 8 строк кода! Учитывая, что я использую VB 9.0, это лучший вариант. Спасибо –

+0

ОК, это тоже не работает в VB 9.0. –

Смежные вопросы