ASP.NET VB - Conversion de type DBNull de type 'String' n'est pas valide

J'ai le texte suivant ASP.NET (VB) code:

    strLocation = CStr(q1("LocationName")) + " " + CStr(q1("LocationAddress")) + " " + CStr(q1("LocationCity"))

Comme LocationCity est nulle:

- Je obtenir la Conversion de type DBNull de type 'String' n'est pas valide.

Est-il un moyen de résoudre ce problème.

Si seulement c'était LocationCity je serais probablement faire quelque chose comme:

    If IsDBNull(q1("LocationCity")) Then
        strLocation = ""
    Else
        strLocation = CStr(q1("LocationCity"))
    End If

J'ai aussi essayé:

    strLocation = If(CStr(q1("LocationName")), "") + " " + If(CStr(q1("LocationAddress")), "") + " " + If(CStr(q1("LocationCity")), "")

mais il a obtenu le même résultat

En C# je voudrais l'utiliser normalement ?? mais pas sûr de la meilleure approche dans le ASP.NET VB

Ce qui s'est vraiment passé? Êtes-vous à la déclaration d'autres dans votre instruction if et une exception est levée? Quel est le débogueur vous dire? Si vous cochez la case est-il vraiment dbnull? La Base de données et le fournisseur de services que vous utilisez?

OriginalL'auteur Nate Pet | 2012-08-06