У меня есть приложение ASP.NET/C#, которое экспортирует некоторые данные в электронную таблицу Excel с помощью COM-взаимодействия одним нажатием кнопки. Когда я нажимаю кнопку, открывается Excel с созданной электронной таблицей. Для чего это стоит, вот код кнопки:
<asp:Button ID="export" Text="Export to spreadsheet" runat="server" OnClick="Export_Workbook" />
Это работает нормально, кроме тех случаев, когда я нажимаю кнопку, закрываю следующую электронную таблицу и обновляю страницу. Когда страница обновляется после нажатия кнопки, снова вызывается Export_Workbook()
, и снова открывается электронная таблица. Например, Firefox сообщает об этом при обновлении: «Чтобы отобразить эту страницу, Firefox должен отправить информацию, которая будет повторять любое действие (например, поиск или подтверждение заказа), которое было выполнено ранее». Это то, чего я хочу избежать.
Я уверен, что есть лучший способ выполнить то, что я пытаюсь сделать, я просто не уверен, каков наилучший подход.
Редактировать
Я сделал это, выполнив следующее:
protected void Export_Workbook(object sender, EventArgs e)
{
Response.Redirect(Request.Url.AbsolutePath, false);
ItemList.Prepare_Workbook();
}
Не очень элегантное решение, но оно работает. Я все еще открыт для предложений.