2014-12-03 71 views
0

我正在嘗試爲List(Of KeyValuePair(Of String, sVolumeInfo))變量創建一個屬性。到目前爲止,我已經有了:使列表(T)屬性

Public ReadOnly Property RemoveableDrives As List(Of KeyValuePair(Of String, sVolumeInfo)) 
    Get 
     RemoveableDrives = mRemoveableDrives 
    End Get 
End Property 
Private mRemovableDrives As List(Of KeyValuePair(Of String, sVolumeInfo)) 

Public Sub New() 
    mRemoveableDrives = New List(Of KeyValuePair(Of String, sVolumeInfo)) 
End Sub 

我的問題是,是,= mRemoveableDrives不能編譯,VB.NET堅持改變mRemoveableDrives類名。

我該如何得到這個工作?

+0

「mRemovableDrives」變量在聲明時拼寫時不帶「e」,但在使用它時會拼寫爲「e」(例如「mRemov ** e ** ableDrives」)。這是問題所在,還是僅僅是在發佈問題時引入的錯字? – 2014-12-03 13:33:16

+1

這只是一個錯字。我已經打開了Option Strict ... – JA12 2014-12-04 09:06:59

回答

1

請勿對函數名稱使用賦值,請使用Return

Get 
    Return mRemoveableDrives 
End Get 

這就是說,將一個集合成員暴露給外部讀寫訪問幾乎肯定是一個壞主意。

+0

我嘗試使用相同的編譯器兼容的「Return」。 我現在正在使用函數來返回集合,編譯器似乎並不介意... – JA12 2014-12-04 09:07:32