# Cosita tonta...clase que emite una tabla compatible con Excel desde un DataSet

<datetime class="hidden">2004-03-26T00:00</datetime>

<!-- category -- mostlylucidcouk, Imported, ASP.NET, C# -->
Muy simple y basado en el [uno sobre el que blogueé anteriormente](/posts/872.aspx) (bien no basado en el código, pero basado en la misma idea). De todos modos, enganchar esto a un botón de enlace, pasar en un conjunto de datos y proporcionará un archivo compatible con Excel descargable...

clase pública GetExcel

{

vacío estático público Convert(DataSet ds, int dataTableId, HttpResponse response, string fileName)

{

DataGrid dg = nuevo DataGrid();

dg.DataSource = ds.Tablas[datosTablaId];

dg.DataBind();

reponse.Buffer = true;

respuesta.ContentType="aplication/vnd.ms-excel";

response.AddHeader("Disposición de contenido", "attachment;filename=" + fileName) ;

using(StringWriter sw = new StringWriter())

{

using(HtmlTextWriter writer = new HtmlTextWriter(sw))

{

dg.RenderControl(writer);

respuesta.Write(sw.ToString());

}

}

respuesta.Fin();

}

(DataSet ds, int dataTableId, HttpResponse response)

{

Convertir(ds,dataTableId,response,"report.xls");

}

vacío estático público Convertir (DataSet ds, HttpResponse response)

{

Convertir(ds,0,response);

}

}