2012-04-04 100 views
3
Dim CustID As String = txtSrchCustID.Text 
    Dim FirstName As String = txtNewCustFName.Text 
    Dim SecondName As String = txtNewCustSName.Text 

    If CustID And FirstName And SecondName = "" Then 
     MsgBox("Please enter a term to search by") 
    EndIf 

这会返回“从字符串转换”到“长整型”无效。我想知道错误是什么以及如何修复它?我所看到的其他问题主要是与分配不正确类型的变量有关,但我认为这不是问题。它发生在所有变量都为空时。InvalidCastException未处理?

谢谢!

+1

认沽期权严格在你的代码的顶部或设置在你的项目属性,它会帮助你抓住这些类型的错误。 – 2012-04-04 14:19:57

+0

我已经这样做了,谢谢:) – Paul 2012-04-05 13:52:58

回答

2

你想做什么。你想检查的全部是其中有""。那么做到这一点:

If string.isNullOrEmpty(CustID) and _ 
    string.isNullOrEmpty(FirstName) And string.isNullOrEmpty(SecondName) Then 
     MsgBox("Please enter a term to search by") 
    End If 

还是你想检查,如果他们中的一个""。那么做到这一点:

If string.isNullOrEmpty(CustID) orelse _ 
    string.isNullOrEmpty(FirstName) orelse string.isNullOrEmpty(SecondName) Then 
     MsgBox("Please enter a term to search by") 
    End If 
+0

非常感谢!非常感激。 – Paul 2012-04-04 13:36:08

+1

没问题.. @ user1305482:记住如果你认为答案是好的,就可以upvote。它给了我们所有温暖的模糊感受:P – Arion 2012-04-04 13:37:11

+0

我试过了,但此时我的声望太低了:( – Paul 2012-04-04 14:02:10