ersetzen
%Vor%
mit
%Vor%
Das Fragezeichen markiert es als Nullwert, und Ihr Leser sollte in der Lage sein, startdate auf null zu setzen, anstatt eine Ausnahme auszulösen.
Sie können auch nach NULL-Werten suchen, während Ihr Leser arbeitet und NULL-Werte durch leere Zeichenfolgen ersetzen
%Vor%
___ answer17490905 ___
Hier ist eine Hilfsmethode, um den Wert aus dem Leser herauszuholen
%Vor%
Update zur Verwendung als Antwort auf einen Kommentar
%Vor%
Beachten Sie auch, dass Sie %code% und dann %code% verwenden. Wahrscheinlich sollte %code%
sein
___ qstntxt ___
Ich hasse es fast, diese Frage zu stellen, es scheint, als ob sie schon millionenfach gestellt worden wäre, aber selbst wenn ich die andere Frage recherchiere, kann ich das in meinem Fall immer noch nicht herausfinden.
Ich habe gelesen, dass DateTime ein NULL-fähiger Typ ist, und ich habe ein paar der Beispiele ausprobiert, aber ich versuche herauszufinden, ob in der Datenbank mein SQLDATAREADER fehlerhaft ist.
Fehler
System.Data.SqlTypes.SqlNullValueException: Daten sind Null. Diese Methode oder Eigenschaft kann nicht für Nullwerte aufgerufen werden.
DetailsKlasse
%Vor%
DBClass
%Vor%
___ tag123aspnet ___ ASP.NET ist ein Framework für die Entwicklung von Microsoft-Webanwendungen, mit dem Programmierer dynamische Websites, Webanwendungen und Webdienste erstellen können. Es ist nützlich, dieses Tag in Verbindung mit dem Typ des Projekttyps zu verwenden, z. [asp.net-mvc], [asp.net-webforms] oder [asp.net-web-api]. Verwenden Sie dieses Tag NICHT für Fragen zu ASP.NET Core - verwenden Sie stattdessen [asp.net-core].
___ answer17490475 ___
Versuchen Sie Folgendes:
Mache die %code% Variable %code% , wie folgt:
%Vor%
Wenn Sie nun den Wert vom Objekt %code% abrufen, müssen Sie die Methode %code% verwenden, die bestimmt, ob der Wert %code% von der Datenbank zurückkommt, wie folgt:
%Vor%
Hinweis: Ich bin mir nicht sicher, wo Sie %code% dem aus der Datenbank gelesenen Wert zuweisen, da dieser im gebuchten Code nicht angezeigt wird. Deshalb habe ich es in meinem Beispiel direkt zugewiesen, aber möglicherweise müssen Sie die Platzierung der Beispiellogik anpassen.
___ tag123c ___ C # (sprich "Cis") ist eine objektorientierte Programmiersprache auf hohem Niveau, die für die Erstellung einer Vielzahl von Anwendungen entwickelt wurde, die auf dem .NET Framework (oder .NET Core) ausgeführt werden. C # ist einfach, leistungsfähig, typsicher und objektorientiert.
___ answer17491034 ___
Können Sie uns bitte genau sagen, welche Zeile den Fehler beim Debuggen auslöst? Es wäre einfacher.
%Vor%
Es ist nicht erforderlich, NULL explizit zuzuweisen, wenn es DBNull ist, da es ein NULL-fähiger Typ ist und daher standardmäßig null enthält.
Ok, gemäß Ihrem aktualisierten Code (beachten Sie die Kommentare):
%Vor%
Lasst uns es ausführlicher versuchen:
%Vor%
___