Zip文件无法从Internet Explorer打开

时间:2014-04-08 15:44:31

标签: c# asp.net httpresponse

我尝试过两种方法从Internet Explorer打开一个zip文件,但都没有。

方法1

<li>
    <a href="<%=ResolveUrl("~/HelpDocs/IMs_Guide.zip")%>">IM User Guide</a>
</li>

使用此方法,我可以看到“打开”对话框。如果我点击“打开”,它可能会尝试打开它。但该文件未打开。

方法2

<li>
    <asp:LinkButton ID="btnDownloadUserGuide" Text="IM User Guide" runat="server" Visible="true" OnClick="btnDownloadUserGuide_Click"></asp:LinkButton>
    <asp:HiddenField ID="hdnUserGuide" runat="server" Value="~/HelpDocs/IMs_Guide.zip" /></li>

代码背后(方法2)

protected void btnDownloadUserGuide_Click(object sender, EventArgs e)
{
    if (!hdnUserGuide.Value.Trim().Equals(""))
    {
        //string strFileName = AppDomain.CurrentDomain.BaseDirectory.ToString() + "\\HelpDocs\\IMs_Guide.zip";
        string FilePath = HttpContext.Current.Server.MapPath("\\HelpDocs\\IMs_Guide.zip");

        string strFileName = AppDomain.CurrentDomain.BaseDirectory.ToString() + "\\HelpDocs\\IMs_Guide_to_New_Q-Track.zip";
        Response.AppendHeader("content-disposition", "attachment; filename=" + "IMs_Guide.zip");
        Response.AppendHeader("Cache-Control", "no-cache");
        Response.ContentType = "Application/x-zip-compressed";

        Response.WriteFile(FilePath);
        //Response.End();
        Response.Flush();
        HttpContext.Current.ApplicationInstance.CompleteRequest();
    }
}

使用此方法,可能会尝试打开它,但看不到“打开”对话框。文件未打开。

如果尝试保存而不是打开文件,则可以。 如果文件类型更改为doc或pdf,则会出现相同的问题。

相同的代码(两种方法)适用于Chrome和Mozilla浏览器。

0 个答案:

没有答案