從以下link有一個例子在我已經在vb.net重新創建的頁面的底部。設置語句,如果錯誤返回空字符串
以下函數運行之前,我從一個文本文件中的一些數據保存到一個名爲T.
例如詞典:
名稱 - T0962
價值 - 5.89
Public Shared Function initialization()
'Variables initialization
Dim parts As New List(Of Intialization)
'Add parts to the list.
parts.Add(New Intialization() With {
.PartName = "T0962",
.PartId = T.Item(.PartName))
})
If parts.Exists(Function(p) p.PartName = "T0962") Then
Dim value = parts.Where(Function(p) p.PartName = variable_type).FirstOrDefault()
Msgbox(value.PartId)
End If
End Function
該程序完美工作,當我有「T0962」變量。當這個變量不存在於文本文件中時,它在字典中也不存在。因此,我在代碼中出現錯誤,因爲.PartId無法初始化。這是因爲在那個文本文件中有時我有這個值,有時候我沒有。
後,我已經仔細analized我已經注意到,在Property語句中出現錯誤,在集(值作爲字符串)更加準確。
Public Property PartId() As String
Get
Return m_PartId
End Get
'here the error happens
Set(value As String)
m_PartId = value
End Set
End Property
有沒有辦法在Set語句中避免這種情況?例如,當出現錯誤時,返回一個空字符串?
請讓我知道,如果有什麼你不明白。
這是什麼'T.Item(.PartName))'這裏該零件名稱,你都提到了呢?這是什麼'T.Item(.PartName問題 –
)'如果變量不存在平等?你可以做一些像'.PartId = If(T.Item(.PartName)= Nothing,「」,T.Item(.PartName))' – Bugs