Ich versuche zu tun, was ich dachte, war eine ziemlich einfache Sache, aber habe Probleme. Ich habe Code in einer .NET-Anwendung, um einen neuen Datensatz mit SQLCommand in eine Tabelle einzufügen.Umgang mit möglicherweise null Datum-Zeit-Wert in einem SQLParameter
Ich übergebe, was könnte entweder ein Datetime-Wert sein oder es könnte null sein. Der folgende Code scheint nicht obwohl zu arbeiten:
command.Parameters.AddWithValue("@SettleDate",
IIf(String.IsNullOrEmpty(SettleDate), Nothing, DateTime.Parse(SettleDate)))
Wo „SettleDate“ ist eine Zeichenfolge, die ein Datum enthält, die null sein könnte. Ich würde denken, dieser Code abdecken würde den Zustand der nicht einen Nullwert zu analysieren versucht, aber wenn es laufe ich die folgende Fehlermeldung erhalten, die von der DateTime.Parse Methode sein, sieht:
String reference not set to an instance of a String.
Parameter name: s
Wie kann das sein ? Wenn "SettleDate" null ist, sollte es niemals die Parse-Methode erreichen.
Ah, das ist eine sehr subtile Sache, die ich nicht realisiert hatte. Vielen Dank. – DeveryDay