我对空值有疑问。我需要一个 if 来检查 2 个值是否为空。如果我第一次循环,一切都很好。当我第二次循环时,'oTableTemp.Rows(i)("ProspectielijstId").ToString() = ""' 出现错误。我已经绝对尝试了一切。我试过 DbNull.Value, Is Nothing,... 这是完整的代码:
For i As Integer = 0 To oTableTemp.Rows.Count - 1 Step 1
If (Convert.ToInt32(oTableTemp.Rows(i)("OpleidingsId")) = 0 And oTableTemp.Rows(i)("ProspectielijstId").ToString() = "" And oTableTemp.Rows(i)("ActieId") = specialeactieId) Then
cString &= "SELECT * FROM AITest..SpecialeActie WHERE SpecialeActie.ActieId = " + clGlobalsData.G_FieldN(specialeactieId)
Exit For
ElseIf (oTableTemp.Rows(i)("ProspectielijstId").ToString() IsNot "" And oTableTemp.Rows(i)("ActieId") = specialeactieId) Then
cString &= " SELECT KlantProspectAlgemeen.Nummer, SpecialeActie.Titel, SpecialeActie.Inhoud, SpecialeActie.Link " & _
"FROM (AITest..SpecialeActie INNER JOIN AITest..t_ProspectieLijst ON t_ProspectieLijst.NaamLijst= " & _
"SpecialeActie.ProspectielijstID) INNER JOIN AITest..KlantProspectAlgemeen ON t_ProspectieLijst.Nummer=KlantProspectAlgemeen.Nummer WHERE SpecialeActie.ActieId = " + clGlobalsData.G_FieldN(specialeactieId)
Exit For
ElseIf (Convert.ToInt32(oTableTemp.Rows(i)("OpleidingsId")) <> 0 And oTableTemp.Rows(i)("ActieId") = specialeactieId) Then
cString &= "SELECT KlantProspectAlgemeen.Nummer, SpecialeActie.Titel, SpecialeActie.Inhoud, SpecialeActie.Link " & _
"FROM (AITest..SpecialeActie INNER JOIN AITest..Cursus ON Cursus.NummerInternCursus=SpecialeActie.OpleidingsID " & _
"INNER JOIN AITest..CursusEmailmarketing ON Cursus.NummerInternCursus = CursusEmailmarketing.NummerInternCursus " & _
"INNER JOIN AITest..t_ProspectieLijst ON t_ProspectieLijst.NaamLijst=CursusEmailmarketing.ProspectielijstID) " & _
"INNER JOIN AITest..KlantProspectAlgemeen ON t_ProspectieLijst.Nummer= KlantProspectAlgemeen.Nummer WHERE SpecialeActie.ActieId = " + clGlobalsData.G_FieldN(specialeactieId)
Exit For
End If
Next
请帮助我,我很绝望..