关于生成Excel文件的问题,我需要能够在webform应用程序位于远程Web服务器上的同时在本地创建文件。这不是我之前处理的任何事情,所以我发现很难提出什么问题。我使用c#在VS2010上使用WebForms。 eanderson指出了我的方向 Simplexcel Michael Stum似乎可以解决问题,但文件是在服务器上生成的(或者我应该说'尝试'因为它是不允许的!)。 / p>
答案 0 :(得分:2)
您应该可以执行类似的操作来生成和下载Excel Sheet
。
protected void generateExcelSheet_click(object sender, EventArgs e)
{
// Create Excel Sheet
var sheet = new Worksheet("Hello, world!");
sheet.Cells[0, 0] = "Hello,";
sheet.Cells["B1"] = "World!";
var workbook = new Workbook();
workbook.Add(sheet);
// Save
Response.ContentType = "application/vnd.ms-excel";
Response.AppendHeader("Content-Disposition", "attachment; filename=MyExcelSheet.xls");
workbook.Save(Response.OutputStream, CompressionLevel.Maximum);
Response.End();
}
在designer.aspx
:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="FileDownload.Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:Button ID="btnExcel" runat="server" Text="Download Excel Sheet" onclick="generateExcelSheet_click" />
</form>
</body>
</html>
我将此代码基于this教程。