Ho creato un dataset fortemente tipizzato (MyDataSet) nella mia app .NET. Per semplicità, diremo che ha un DataTable (MyDataTable), con una colonna (MyCol). MyCol ha la proprietà DataType impostata su "System.Int32" e la proprietà AllowDBNull impostata su "true".Come posso includere DBNull come valore nel mio set di dati fortemente tipizzato?
Vorrei creare manualmente una nuova riga e aggiungerla a questo set di dati. Creo la riga senza problemi, con qualcosa del tipo:
MyDataSet.MyDataTableRow myRow = MySimpleDataSet.MyDataTable.NewItemRow();
Fine. Tuttavia, quando si tenta di impostare il valore DBNull:
myRow.MyCol = DBNull.Value;
mi hanno detto che non posso farlo ... che non può lanciare quella di un int. Questo ha senso, in un certo senso, dal momento che l'ho definito come int ... ma come posso ottenere DBNull? Non dovrei essere in grado di avere DBNull lì dentro? Non è quello per cui è la proprietà AllowDBNull?
Mi manca ovviamente qualcosa di fondamentale. Qualcuno può aiutare a spiegare di cosa si tratta?
MODIFICA: Ho anche provato a inserire "int?" come DataType, ma Visual Studio genera un errore quando lo inserisco, dicendo che "Column richiede un DataType valido."
Questo può aiutare: http://stackoverflow.com/questions/879095/nullable-int-column-in-dataset –