/ / Exportar para sobresalir en asp.net usando Microsoft.Office.Interop.Excel - c #, asp.net, export-to-excel

Exporte para sobresalir en asp.net utilizando Microsoft.Office.Interop.Excel - c #, asp.net, export-to-excel

Estoy usando el siguiente ejemplo en Microsoft.com sitio web para exportar datos desde el servidor sql a la hoja de Excel, modifiqué ligeramente el ejemplo para usar datatable para mi versión mientras lo depuro, recorre todas las filas pero solo muestra una última fila en el archivo de Excel real

A continuación se muestra el código para 2010, estoy seguro de que me perdí algo

foreach (DataRow row in dt.Rows)
{
// rowCounter++;
workSheet.Cells[1, "A"] = row["Date"];
workSheet.Cells[1, "B"] = row["Title"];
workSheet.Cells[1, "C"] = row["Description"];
}
((Excel.Range)workSheet.Columns[1]).AutoFit();
((Excel.Range)workSheet.Columns[2]).AutoFit();
((Excel.Range)workSheet.Columns[3]).AutoFit();

¿Cómo puedo modificar este código para que escriba la salida en Download_Excel.xls archivo

El código anterior solo muestra la última fila en Excel. SALIDA enter image description here

No tiene título personalizado como tampoco.

Dos errores que estaba haciendo.

primero ROWINDEX Estaba empezando desde el 1 así que me puse ROWINDEX= 2 y las cosas funcionaron bien

Codigo de trabajo

foreach (DataRow row in dt.Rows)
{
rowCounter++;
workSheet.Cells[rowCounter, "A"] = row["Date"];
workSheet.Cells[rowCounter, "B"] = row["Title"];
workSheet.Cells[rowCounter, "C"] = row["Description"];
}

string fileName = "Product.xls";
excelApp.DisplayAlerts = false;
workSheet.SaveAs(HttpContext.Current.Server.MapPath("../"+fileName));

Respuestas

0 para la respuesta № 1

Asegúrate de cambiar el índice en el camino. En este momento, siempre está sobrescribiendo la fila 1, haga que siga aumentando con cada fila.