我想提供文件的动态下载。这些文件可以在服务器端即时生成,因此它们表示为 byte[] 并且不存在于磁盘上。我希望用户填写 ASP.NET 表单,点击下载按钮并返回他/她想要的文件。
这是我在 ASP.NET 表单后面的代码的样子:
public partial class DownloadService : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void submitButtonClick(object sender, EventArgs e)
{
if (EverythingIsOK())
{
byte[] binary = GenerateZipFile();
Response.Clear();
Response.ContentType = "application/zip";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.BinaryWrite(binary);
Response.End();
}
}
...
}
我希望这段代码可以正常工作。我清除响应,放入我生成的 zip 文件和宾果游戏。然而,这种情况并非如此。我在浏览器中收到以下消息:
无法显示 XML 页面 无法使用样式表查看 XML 输入。请更正错误,然后单击“刷新”按钮,或稍后重试。在文本内容中发现无效字符。错误处理资源' http://localhost:15900/mywebsite/DownloadS ...
我究竟做错了什么?