Meine Webanwendung stellt eine Verbindung zur MySql-Datenbank her und Benutzer filtern die Daten in Gridview durch Auswahl des Datumsbereichs. Mein Problem ist jetzt, wenn die Benutzer auf die Schaltfläche Export klicken. die Exportdatei (Excel) zeigt aber nicht im Benutzercomputer sondern im Server? Ich möchte es mit ihren Computern zeigen, können Sie mir bitte helfen. Vielen Dank für Ihre Antwort.So exportieren Sie Gridview nach Excel, arbeiten in Local, aber nicht bei Bereitstellung über IIS
-Code hinter in Export_Button
protected void Export_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
excel.Visible = true;
Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Add(System.Reflection.Missing.Value);
Microsoft.Office.Interop.Excel.Worksheet sheet1 = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets[1];
int StartCol = 1;
int StartRow = 1;
int j = 0, i = 0;
//Write Headers
for (j = 0; j < GridView1.Columns.Count; j++)
{
Microsoft.Office.Interop.Excel.Range myRange = (Microsoft.Office.Interop.Excel.Range)sheet1.Cells[StartRow, StartCol + j];
myRange.Value2 = GridView1.Columns[j].HeaderText;
}
StartRow++;
//Write datagridview content
for (i = 0; i < GridView1.Rows.Count; i++)
{
for (j = 0; j < GridView1.Columns.Count; j++)
{
try
{
Microsoft.Office.Interop.Excel.Range myRange = (Microsoft.Office.Interop.Excel.Range)sheet1.Cells[StartRow + i, StartCol + j];
myRange.Value2 = GridView1.Rows[i].Cells[j].Text == null ? "" : GridView1.Rows[i].Cells[j].Text;
}
catch
{
;
}
}
}
}
Welche Ausnahme erhalten Sie? Ich denke, Microsoft.Office.Interop.Excel.Worksheet möglicherweise nicht in Ihrer Hosting-Umgebung – Sami
Ich bekomme keine Ausnahme, wenn ich die Identität von Excel in "The Interactive User", aber wenn ich es in "The Launching User "Dieser Fehler wird angezeigt" Microsoft Excel kann kein Dokument mehr öffnen oder speichern, da nicht genügend Arbeitsspeicher oder Speicherplatz verfügbar ist. " – Seryu