【发布时间】:2014-11-15 08:57:32
【问题描述】:
我需要创建和 Excel 文件并从 aspx 页面下载它。我创建了一个简单的页面(default.aspx),上面有一个按钮(“Button1”)。这是default.aspx.cs文件
using System;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string content = "";
content += "<head>";
content += "</head>";
content += "<body>";
content += "<table>";
content += "<tr>";
content += "<th>foo</th>";
content += "</tr>";
content += "</table>";
content += "</body>";
content += "</html>";
Response.AppendHeader("Content-Type", "application/vnd.ms-excel");
Response.AppendHeader("Content-disposition", "attachment; filename=test.xls");
Response.Write(content);
}
}
当我运行此代码并单击按钮时,它实际上会在单元格 A1 中生成带有测试“foo”的 Excel 文件。问题是我从 IE 收到以下错误消息:
我做错了什么?如何生成文件以使其不会显示错误消息?
【问题讨论】:
-
应该是 application/vnd.ms-excel 而不是 application/vmd.ms-excel (vmd -> vnd)
-
马克西姆,是的,你是对的。然而,这并不能解决问题。我正在更新代码以反映此更正。
-
如果这是一个重复的问题,您能否提供一个链接到该问题的答案?据称是重复的链接问题不会询问“我如何生成文件以便它不会导致显示错误消息?”更重要的是没有回答这个问题。
-
这里有一篇文章声称可以做到这一点c-sharpcorner.com/UploadFile/kaushikborah28/…,但它缺少工作示例。