Construir una tabla a partir de un DataTable
A menudo, su aplicación extraerá datos de una base de datos y los almacenará en forma de DataTable. Puede insertar fácilmente estos datos en su documento como una nueva tabla y aplicar formato rápidamente a toda la tabla.
Con Aspose.Words, puede recuperar fácilmente datos de una base de datos y almacenarlos como una tabla:
- Cree un nuevo objeto DocumentBuilder en su Document.
- Inicie una nueva tabla usando DocumentBuilder.
- Si queremos insertar los nombres de cada una de las columnas de nuestro DataTable como una fila de encabezado, repita cada columna de datos y escriba los nombres de las columnas en una fila de la tabla.
- Repita cada DataRow en el DataTable:
- Repita cada objeto en DataRow.
- Inserte el objeto en el documento usando DocumentBuilder. El método utilizado depende del tipo de objeto que se inserta, por ejemplo, DocumentBuilder.Writeln para texto y DocumentBuilder.InsertImage para una matriz de bytes que representa una imagen.
- Al final del procesamiento del DataRow, también finalice la fila que está creando el DocumentBuilder mediante DocumentBuilder.EndRow.
- Una vez que se hayan procesado todas las filas del DataTable, finalice la tabla llamando a DocumentBuilder.EndTable.
- Finalmente, podemos configurar el estilo de tabla deseado usando una de las propiedades de tabla apropiadas, como Table.StyleIdentifier, para aplicar formato automáticamente a toda la tabla.
El método ImportTableFromDataTable acepta un objeto DocumentBuilder, el DataTable que contiene los datos y una bandera que especifica si el encabezado de columna del DataTable está incluido en la parte superior de la tabla. Este método crea una tabla a partir de estos parámetros utilizando la posición y el formato actuales del constructor. Proporciona un método para importar datos desde DataTable
e insertarlos en una nueva tabla usando DocumentBuilder.
En este ejemplo se utilizan los siguientes datos de nuestro DataTable:
El siguiente ejemplo de código muestra cómo ejecutar el algoritmo anterior en Aspose.Words:
Luego, el método se puede invocar fácilmente utilizando su DocumentBuilder y sus datos.
El siguiente ejemplo de código muestra cómo importar los datos de un DataTable
e insertarlos en una nueva tabla del documento: