ZIP下载包含HTML内容

时间:2012-05-26 07:42:55

标签: c# .net download

当我使用以下代码下载ZIP文件时,它似乎工作。但是,当我尝试打开下载的ZIP时,收到“无效的压缩文件夹”消息。当我在记事本中打开ZIP时,我发现它已经填充了HTML。

string fp = Server.MapPath("directory\\file.zip");
FileInfo file = new FileInfo(fp);

if (file.Exists)
{
    Response.ClearContent();
    Response.AddHeader("content-disposition","attachment; filename=" + file.Name);
    Response.AddHeader("content-length", file.Length.ToString());
    Response.ContentType = "application/zip";
    Response.TransmitFile(file.FullName);
    Response.End();
}

我似乎无法修复的问题可能与我尝试手动输入文件地址(http://website.com/downloads/file.zip)有关,即使在我输入重定向(http://website.com/login.aspx)时也是如此以管理员身份登录。任何在哪里寻找的指针都将非常感激。

1 个答案:

答案 0 :(得分:1)

除了使用Response.ClearContent()之外,还可以使用Response.ClearHeaders()删除所有当前标头以及响应正文。

来自MSDN,HttpResponse.ClearContent Method

  

ClearContent方法不会清除标题信息。