una tag para palabras paginas nube letras imagenes hacer elaborar crear con como collage caligramas art .net database ado.net dataset strong-typing

.net - tag - paginas para crear caligramas



Adaptadores de tabla.NET: ¿Obtener contra llenar? (4)

La única diferencia es que GetData creará una instancia para usted, Fill llenará una tabla existente.

Depende si quiere o necesita crear una instancia de DataTable. A menudo utilizo Fill al completar un determinado miembro de la tabla de un DataSet que ya he creado.

Siempre uso Get cuando trabajo con datos (fuertemente tipados o no) de la base de datos y nunca he necesitado usar Fill aunque también podría usar Fill en lugar de get al extraer y actualizar datos.

¿Alguien puede brindar orientación sobre las implicaciones y los inconvenientes de cada método?

¿En qué situaciones es preferible usar uno u otro?

¿Alguna implicancia de rendimiento?

Gracias de antemano por las respuestas! ¡Amo esta comunidad!


  • Obtenga cuando solo desee una única DataTable.
  • Rellene cuando desee agregar tablas de datos adicionales en un único conjunto de datos.

Un detalle particular de Fill, si la tabla ya contiene datos es que puede obtener excepciones de índice únicas cuando, por ejemplo, la consulta devuelve una fila cuya clave primaria ya está en la tabla.

He trabajado con un montón de código de formularios de Windows vinculados a datos donde los controles de edición o una cuadrícula en el formulario están vinculados a una tabla y luego se utiliza Fill para cargar más filas de la base de datos a la tabla. Esto puede causar algunas secuencias de activación de eventos interesantes y errores intermitentes de la experiencia.

Usando Get para recuperar una nueva tabla con los nuevos resultados, volver a vincular el formulario a la nueva tabla puede evitar situaciones como esta.

Dudo que haya mucha diferencia de rendimiento entre los dos, a menos que use Fill en una tabla con filas existentes. En este caso, se ignora el método BeginLoadData de la tabla, que normalmente tendría un retraso en la activación del evento y la reconstrucción del índice hasta el final.


Usar Fill puede ser ideal para depurar excepciones porque la DataTable pasada al método puede ser interrogada para más detalles. Get no regresa en la misma situación.

Consejos:

  • DataTable.GetErrors () devuelve una matriz de instancias de DataRow que están en error
  • DataRow.RowError contiene una descripción del error de fila
  • DataRow.GetColumnsInError () devuelve una matriz de instancias de DataColumn en error