Я создал страницу, которая позволяет пользователям загружать файл при нажатии кнопки ... Событие onclick кнопки связано со следующим фрагментом кода:
this.Page.Response.Clear();
this.Page.Response.ContentType = System.Net.Mime.MediaTypeNames.Application.Zip;
this.Page.Response.AppendHeader("Content-Disposition", "attachment; filename=\"" + System.IO.Path.GetFileName(filename) + "\"");
this.Page.Response.TransmitFile(filename);
this.Page.Response.Flush();
this.Page.Response.End();
Загрузка работает нормально, но теперь, когда я пытаюсь взаимодействовать со страницей (например, снова нажать кнопку загрузки), ничего не отправляется обратно.
Я неправильно отвечаю на запрос на загрузку (должен ли я использовать другой / новый объект ответа), или мне нужно что-то еще сделать, чтобы страница стала активной после загрузки?
Edit:
Итак, я попытался объединить два предложения для создания httphandler и вызвать Response.Redirect для обработчика из события нажатия кнопки.
void submitButton_Click(object sender, EventArgs e)
{
label.Text = "Boo!";
this.Page.Response.Redirect("~/ViewAttachment.ashx?id=foo", false);
}
Если я прохожу через это в отладчике, он продолжается после вызова перенаправления, но страница просто возвращается в состояние, когда кнопка не работает, и метки имеют свои значения по умолчанию. Я сейчас делаю переадресацию неправильно?