Código:
Pero cuando va a ejecutar la línea que puse en rojo "myRow = dsDataSet.Tables(0).NewRow()" me da el siguiente error: "Invalid storage type: DBNull."Dim myRow As Data.DataRow Dim myColumn As Data.DataColumn myCommand.CommandText = strSQL '--Agregando la nueva tabla al DataSet-- dsDataSet.Tables.Add() '--------------------------------------- '--Llenando el DataReader-- Dim dr As Data.SqlClient.SqlDataReader = myCommand.ExecuteReader() '-------------------------- Dim byteContador As Byte = 0 While dr.Read If byteContador = 0 Then '--Creando las columnas en el DataTable-- For i As Integer = 0 To dr.FieldCount - 1 myColumn = New Data.DataColumn myColumn.AllowDBNull = True myColumn.DataType = dr.Item(i).GetType myColumn.ColumnName = dr.GetName(i) myColumn.Caption = dr.GetName(i) dsDataSet.Tables(0).Columns.Add(myColumn) Next '---------------------------------------- byteContador = 1 End If myRow = dsDataSet.Tables(0).NewRow() For i As Integer = 0 To dr.FieldCount - 1 myRow.Item(dr.GetName(i)) = dr.Item(i) Next dsDataSet.Tables(0).Rows.Add(myRow) End While dr.Close()
No se por qué da esto error si le estoy diciendo a todas mis columnas: "myColumn.AllowDBNull = True". ¿Qué estoy haciendo mal?