2009-12-19 47 views
5

Actualmente estoy trabajando con ASP.NET MVC y tengo un método de acción que muestra pocos informes en la vista en formato de tabla.Exportación de una tabla HTML a Excel desde ASP.NET MVC

Tengo un requisito para exportar la misma tabla a un documento de Excel con el clic de un botón en la Vista.

¿Cómo se puede lograr esto? ¿Cómo crearías tu método de Acción para esto?

Respuesta

1

obtener datos de base de datos utilizando los métodos de acceso de datos en la red del punto.

Use un bucle para obtener cada registro.

Ahora agregue cada registro en una variable, uno por uno, de esta manera.

Name,Email,Phone,Country 
John,[email protected],+12345,USA 
Ali,[email protected],+54321,UAE 
Naveed,[email protected],+09876,Pakistan 

uso 'nueva línea' código al final de cada fila (por ejemplo '\ n')

Ahora escribir por encima de los datos en un archivo con extensión .csv (ejemplo data.csv)

Ahora abrir ese archivo en Excel

:)

+1

¿Qué sucede si los valores contienen una coma? –

+0

@tony_le_montana: http://stackoverflow.com/questions/769621/dealing-with-commas-in-a-csv-file – NAVEED

7

en su acción del controlador se podría añadir lo siguiente:

Response.AddHeader("Content-Disposition", "filename=thefilename.xls"); 
Response.ContentType = "application/vnd.ms-excel"; 

Luego, simplemente envíe al usuario a la misma vista. Eso debería funcionar.

+4

Funciona, gracias. Solo una nota, Excel se queja de que el contenido tiene un formato diferente al de la extensión. –

Cuestiones relacionadas