He creado un conjunto de datos fuertemente tipado (MyDataSet) en mi aplicación .NET. En aras de la simplicidad, diremos que tiene una DataTable (MyDataTable), con una columna (MyCol). MyCol tiene su propiedad DataType establecida en "System.Int32" y su propiedad AllowDBNull establecida en "true".¿Cómo puedo incluir DBNull como un valor en mi conjunto de datos fuertemente tipado?
Me gustaría crear manualmente una nueva fila y agregarla a este conjunto de datos. Creo la fila sin ningún problema, con algo como:
MyDataSet.MyDataTableRow myRow = MySimpleDataSet.MyDataTable.NewItemRow();
Fine. Sin embargo, cuando intento para establecer el valor de DBNull:
myRow.MyCol = DBNull.Value;
Me han dicho que no puedo hacerlo ... que no puede emitir ese a un int. Esto tiene sentido, de alguna manera, ya que lo he definido como un int ... pero ¿cómo puedo obtener DBNull allí? ¿Se supone que no puedo tener DBNull allí? ¿No es eso para lo que es la propiedad AllowDBNull?
Obviamente me falta algo fundamental. ¿Alguien puede ayudar a explicar lo que es?
EDIT: También intenté ingresar "int?" como DataType, pero Visual Studio arroja un error cuando lo ingreso, diciendo que "Column requiere un DataType válido".
Esto puede ayudar: http://stackoverflow.com/questions/879095/nullable-int-column-in-dataset –