Pregunta

¿Cómo convertir un DataColumn de GUID establecidos como tipo string a un DataColumn de GUID donde el tipo es Guid? Una columna en los datos de origen tiene el tipo incorrecto y no puede cambiarlo allí.

¿Fue útil?

Solución

Puede añadir a Womp a responder a la siguiente opción:

  1. Después de obtener el cuadro completo de los datos que puede agregar un nuevo DataColumn a las columnas de la tabla de datos de esta manera:

    DataColumn dc = new DataColumn("GUIDColumnName",typeof(Guid),"StringColumnName");
    DataTableObj.Columns.Add(dc);
    

Esto no tendrá un impacto en el rendimiento si su volumen de datos es enorme.

Otros consejos

Una vez que la tabla de datos se ha rellenado con los datos, no se puede cambiar el tipo de columna. Hay algunos enfoques que puede tomar:

  1. Si estás usando un DataAdapter para llenar la tabla, puede utilizar DataAdapter.FillSchema() para obtener la estructura de la tabla por primera vez. A continuación, puede modificar el tipo de columna y, a continuación, llenarlo con los datos.

  2. Tomar la tabla inicial y clonarlo, cambiar el tipo de columna de la nueva tabla, y luego usar DataTable.ImportRow() para importar cada fila de la tabla antigua.

  3. Crear una nueva columna, copiar los valores de la columna de edad a la nueva columna y eliminar la columna de edad.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top