Проблемы с Response.TransmitFile, Response.End и IE

Я разрабатываю приложение ASP.NET, которое в какой-то момент отправляет файл пользователю, используя Response.TransmitFile.

Он отлично работает на моем компьютере разработчика, и когда я развертываю его на тестовых серверах, он все еще работает на двух из них; хотя на одном из серверов (W2K3) он работает только в Firefox, когда я пробую его в IE7, я получаю сообщение об ошибке типа «Internet Explorer не может открыть файл sendfile.aspx на (имя сервера)».

Я создал небольшую встроенную страницу aspx, чтобы воспроизвести проблему, вот она:

<%@ Page Language="C#" %>
<html><head>
<script language="CS" runat="server">
    void Page_Load(object sender, System.EventArgs e) 
    {
        string filePath = @"C:\temp\export.zip";
        Response.ClearHeaders();
        Response.ContentType = "application/zip";
        Response.Clear();
        Response.AppendHeader("Content-disposition", "attachment; filename=export.zip");
        Response.TransmitFile(filePath);
        Response.End();
    }
</script>
</head></html>

Я пробовал разные вещи, и я заметил, что это работает снова, если я закомментируюResponse.End строка (но AFAIK эта строка должна быть там, по крайней мере, в соответствии с каждым примером кода, который я нахожу в Интернете)

Еще одна проблема, которую я заметил, которая может или не может быть связана с тем, что она также потерпит неудачу, если я удалю<html>, <head> и его закрывающие теги.

Я почесал голову над этим некоторое время, кто-нибудь знает, как заставить это работать?

Ответы на вопрос(3)

Ваш ответ на вопрос