Сравнение типов в VB.NET
Как я могу сравнить тип данных типа в VB.NET?
Мой код:
Private Function Equal(ByVal parameter As String, ByVal paramenterName As String, ByVal dataType As Type) As String
If dataType = String Then
return 1;
End If
End Function
Любые идеи?
Ответы
Ответ 1
Принятый ответ имеет синтаксическую ошибку. Вот правильное решение:
If dataType = GetType(String) Then
Return 1
End If
или
If dataType.Equals(GetType(String)) Then
Return 1
End If
или
If dataType Is GetType(String) Then
Return 1
End If
Последний способ, вероятно, лучший способ проверить, потому что он не будет генерировать исключение, если объект имеет значение null.
Также см. https://msdn.microsoft.com/en-us/library/system.object.gettype(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1
Ответ 2
If dataType = GetType(String) Then
return 1;
End If
Ответ 3
If datatype Is GetType(String) Then
'do something
End If
Замените Is
на =
и все работает
Ответ 4
Это, вероятно, лучший способ сделать это в VB.
If dataType Is String Then
return 1
End If