2012-04-04 2 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 

Это возвращает «Преобразование из строки», чтобы напечатать «Long» недействительно ». Мне было интересно, что такое ошибка и как это можно исправить? Другие вопросы, на которые я смотрел, в основном касались переменных, которые присваивали неправильные типы, но я думаю, что это не проблема. Это происходит, когда все переменные пусты.InvalidCastException был необработанным?

Спасибо!

+1

Вставьте опцию Strict On в верхней части вашего кода или установите ее в свойствах вашего проекта, и это поможет вам уловить эти ошибки. –

+0

Я сделал это, спасибо :) – Paul

ответ

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

+1

Нет проблем .. @ user1305482: помните, что если вы считаете, что ответ хороший, помните. Это дает нам все теплые нечеткие чувства: P – Arion

+0

Я пытался, но моя репутация на данный момент слишком низкая :( – Paul

Смежные вопросы