Domanda
Sto cercando di generare un modello di livello dati. Quando eseguo le selezioni, gli aggiornamenti e gli inserti, l'idea è di far funzionare il modello con tutte le colonne perché non so quali contengano valori o meno. Il problema è che potrei avere un update statemtent come cmd.Parameters.AddWithValue (" @ Field " ;, this.Field); e se quel valore è nullo, la query non verrà eseguita. Come posso aggirare questo problema?
AGGIORNAMENTO:
Ho provato ?? soluzione ma ricevo l'errore Operatore ?? non può essere applicato agli operandi stringa (o int) e System.DBNull. Sembra funzionare solo se il campo è effettivamente nullo, ma non se ha un valore. Quindi ho provato a posizionare il tipo (oggetto) DBNull davanti a DBNull ma ancora niente.
L'aggiunta di (oggetto) a questo campo ha funzionato!
Grazie.
Soluzione
cmd.Parameters.AddWithValue("@Field", this.Field ?? DBNull.Value);
?? è operatore di coalizione in C #.