DBNull.Value Campo
Definición
public: static initonly DBNull ^ Value;
public static readonly DBNull Value;
staticval mutable Value : DBNull
Public Shared ReadOnly Value As DBNull
Valor de campo
Ejemplos
En el ejemplo siguiente se DBNull.Value.Equals
llama al método para determinar si un campo de base de datos de una base de datos de contactos tiene un valor válido.The following example calls the DBNull.Value.Equals
method to determine whether a database field in a contacts database has a valid value. Si es así, el valor del campo se anexa a la salida de la cadena en una etiqueta.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
Comentarios
DBNulles una clase singleton, lo que significa que solo puede existir esta instancia de esta clase.DBNull is a singleton class, which means only this instance of this class can exist.
Si faltan datos en un campo de base de datos, DBNull.Value puede usar la propiedad para DBNull asignar explícitamente un valor de objeto al campo.If a database field has missing data, you can use the DBNull.Value property to explicitly assign a DBNull object value to the field. Sin embargo, la mayoría de los proveedores de datos lo hacen automáticamente.However, most data providers do this automatically.
Para evaluar los campos de base de datos para determinar DBNullsi sus valores son, puede pasar el valor DBNull.Value.Equals
del campo al método.To evaluate database fields to determine whether their values are DBNull, you can pass the field value to the DBNull.Value.Equals
method. Sin embargo, este método rara vez se usa porque hay varias maneras de evaluar un campo de base de datos para los datos que faltan.However, this method is rarely used because there are a number of other ways to evaluate a database field for missing data. Entre ellas se incluyen IsDBNull
la función Visual Basic Convert.IsDBNull , el método DataTableReader.IsDBNull , el método IDataRecord.IsDBNull , el método y otros métodos.These include the Visual Basic IsDBNull
function, the Convert.IsDBNull method, the DataTableReader.IsDBNull method, the IDataRecord.IsDBNull method, and several other methods.