In your code, immediately after sending emails redirect 302 to the confirmation page:
protected void btnSend_Click(object sender, EventArgs e)
{
SendManyEmails();
Response.Redirect("confirmation.aspx");
}
With this kind of POST code, the original page will not be displayed in the browser history.
This generic pattern is known as Post / Redirect / Get pattern .
Bonus state retention information when executing Post / Redirect / Get
, POST - , . ASP.NET Page all Control, , ViewState.
- " " - , - POST - GET. - : RoR flash, ASP.NET MVC TempData. ASP.NET , , - .
Session POST, GET . , , Flash/TempData ASP.NET.