From: elizas on
One of most common issue which many of the web developers face in their web
applications, is that the duplicate records are inserted to the Database on
page refresh. If the web page contains some text box and a button to submit
the textbox data to the database. In that case when the user insert some data
to the textbox and click on the submit button, it will save the record to the
Database and then if the user refresh the web page immediately then the same
record is again saved to the database as there is no unique keys that can be
used to verify the existence of the data, so as to prevent the multiple
insertion.

http://www.mindfiresolutions.com/Avoid-Duplicate-record-insertion-on-page-refresh-in-ASPNET-486.php