检查char

时间:2015-08-24 13:29:27

标签: vb.net char typeof

在我正在研究的VB.NEt程序中,我有以下几行:

Dim objectType = parameters(2).GetType()

' here objectType is of type System.Char

If TypeOf parameters(2) Is Char() Then
    enrgAEcrire = parameters(2)
Else

    Throw New Exception("@MSG 12,9: INVALID PARAM")
End If

目标是我需要验证第二个参数确实是一个char。但是,如果我在点击这些行之前设置了这样的参数:

Dim myVar As String = "S"c

点击该行时,objectType = System.Char但仍会抛出异常。

在验证问题之前,我需要知道它是否是常见的VB.Net错误/行为。

1 个答案:

答案 0 :(得分:1)

您应该使用以下内容:

    If parameters(2).GetType() Is GetType(Char) Then
        enrgAEcrire = parameters(2)
    Else

       Throw New Exception("@MSG 12,9: INVALID PARAM")
    End If

请注意,第二个GetType(GetType(Char))等同于C#typeof;但是第一个GetTypeparameters(2).GetType())在VB.NET和C#中使用相同。