Ich habe eine DataTable resultSet;
- Ich versuche Felder für Null zu überprüfen, aber ein '{}' (leeres Set?) Objekt zurück zu bekommen. Suchvorgänge mit "{}" liefern keine geeigneten Lösungen.C# DataTable ItemArray gibt '{}' zurück - wie kann ich auf Null-Wert testen?
Dies ist der Code, der wie erwartet funktioniert nicht, wenn die „fk_id“ Feld null ist:
if (resultSet.Rows[0].ItemArray[resultSet.Columns.IndexOf("fk_id")] == null)
{
//never reaches here
}
Hinweis: einen int Index anstelle des Columns.IndexOf()
verwendet, ist nicht das Problem.
Hat die "{}" auch einen anderen Namen in C#?
Tolles Dankeschön, komplett vergessen "DBNull.Value" - es ist schon eine Weile her, seit ich Datensätze bearbeitet habe –
Ich frage mich, warum sie es so entworfen haben, anstatt nur null zu verwenden? –
@ k.rob Da es in .NET 1.0 keine Nullable gab, gab es keine Möglichkeit, einen Int32-Wert von "null" darzustellen. –