SqlParameterCollection akzeptiert nur Nicht-Null-Objekte vom Typ SqlParameter, keine DBNull-Objekte

8

Wenn ich den SQL-Parameter p zur Sammlung hinzufüge, erhalte ich InvalidCastException mit der Nachricht aus dem Beitragstitel.

parentId ist eine nullbare Ganzzahl und eine nullbare Ganzzahl in der Datenbank.

Warum bekomme ich diese Ausnahme und wie kann ich sie lösen?

Ich verwende keine gespeicherten Prozeduren und habe ähnliche Threads gelesen, aber sie haben mir nicht geholfen.

%Vor%     
Elisabeth 30.11.2012, 21:38
quelle

2 Antworten

14

Sie fügen Ihr new SqlParameter nicht hinzu. p ist das Ergebnis von new SqlParameter("ParentId", SqlDbType.Int).Value = parentId ?? (object) DBNull.Value . Mit anderen Worten, p selbst ist DBNull.Value .

Teilen Sie die Anweisung in zwei Teile auf:

%Vor%

Alternativ

%Vor%

Entweder wäre p der Parameter und nicht der Wert des Parameters.

    
hvd 30.11.2012, 21:41
quelle
-2

Sie müssen Folgendes verwenden:

%Vor%     
briantyler 30.11.2012 21:42
quelle

Tags und Links