DBNull.Value DBNull.Value DBNull.Value DBNull.Value Field

Definizione

Rappresenta l'unica istanza della classe DBNull.Represents the sole instance of the DBNull class.

public: static initonly DBNull ^ Value;
public static readonly DBNull Value;
 staticval mutable Value : DBNull
Public Shared ReadOnly Value As DBNull 

Valore del campo

Esempi

L'esempio seguente chiama il DBNull.Value.Equals metodo per determinare se un campo del database in un database dei contatti ha un valore valido.The following example calls the DBNull.Value.Equals method to determine whether a database field in a contacts database has a valid value. In caso affermativo, il valore del campo viene aggiunto all'output della stringa in un'etichetta.If it does, the field value is appended to the string output in a label.

private void OutputLabels(DataTable dt)
{
   string label; 

   // Iterate rows of table
   foreach (DataRow row in dt.Rows)
   {
      int labelLen;
      label = String.Empty;
      label += AddFieldValue(label, row, "Title");
      label += AddFieldValue(label, row, "FirstName");
      label += AddFieldValue(label, row, "MiddleInitial");
      label += AddFieldValue(label, row, "LastName");
      label += AddFieldValue(label, row, "Suffix");
      label += "\n";
      label += AddFieldValue(label, row, "Address1");
      label += AddFieldValue(label, row, "AptNo");
      label += "\n";
      labelLen = label.Length;
      label += AddFieldValue(label, row, "Address2");
      if (label.Length != labelLen)
         label += "\n";
      label += AddFieldValue(label, row, "City");
      label += AddFieldValue(label, row, "State");
      label += AddFieldValue(label, row, "Zip");
      Console.WriteLine(label);
      Console.WriteLine();
   }
}

private string AddFieldValue(string label, DataRow row, 
                             string fieldName) 
{                                
   if (! DBNull.Value.Equals(row[fieldName])) 
      return (string) row[fieldName] + " ";
   else
      return String.Empty;
}
Private Sub OUtputLabels(dt As DataTable)
   Dim label As String 

   ' Iterate rows of table
   For Each row As DataRow In dt.Rows
      Dim labelLen As Integer
      label = String.Empty
      label += AddFieldValue(label, row, "Title")
      label += AddFieldValue(label, row, "FirstName")
      label += AddFieldValue(label, row, "MiddleInitial")
      label += AddFieldValue(label, row, "LastName")
      label += AddFieldValue(label, row, "Suffix")
      label += vbCrLf
      label += AddFieldValue(label, row, "Address1")
      label += AddFieldValue(label, row, "AptNo")
      label += vbCrLf
      labelLen = Len(label)
      label += AddFieldValue(label, row, "Address2")
      If Len(label) <> labelLen Then label += vbCrLf
      label += AddFieldValue(label, row, "City")
      label += AddFieldValue(label, row, "State")
      label += AddFieldValue(label, row, "Zip")
      Console.WriteLine(label)
      Console.WriteLine()
   Next
End Sub

Private Function AddFieldValue(label As String, row As DataRow, _
                          fieldName As String) As String
   If Not DbNull.Value.Equals(row.Item(fieldName)) Then
      Return CStr(row.Item(fieldName)) & " "
   Else
      Return Nothing
   End If
End Function

Commenti

DBNull è una classe singleton, pertanto che può esistere solo questa istanza di questa classe.DBNull is a singleton class, which means only this instance of this class can exist.

Se un campo del database con dati mancanti, è possibile usare la DBNull.Value proprietà da assegnare in modo esplicito un DBNull valore nel campo dell'oggetto.If a database field has missing data, you can use the DBNull.Value property to explicitly assign a DBNull object value to the field. Tuttavia, la maggior parte dei provider di dati di questa operazione automaticamente.However, most data providers do this automatically.

Per valutare i campi di database per determinare se i relativi valori sono DBNull, è possibile passare il valore del campo per il DBNull.Value.Equals (metodo).To evaluate database fields to determine whether their values are DBNull, you can pass the field value to the DBNull.Value.Equals method. Tuttavia, questo metodo viene raramente utilizzato perché esistono diversi altri modi per valutare un campo del database per i dati mancanti.However, this method is rarely used because there are a number of other ways to evaluate a database field for missing data. Sono inclusi Visual Basic IsDBNull funzione, il Convert.IsDBNull metodo, il DataTableReader.IsDBNull metodo, il IDataRecord.IsDBNull (metodo) e molti altri metodi.These include the Visual Basic IsDBNull function, the Convert.IsDBNull method, the DataTableReader.IsDBNull method, the IDataRecord.IsDBNull method, and several other methods.

Si applica a