This happens as on page refresh, it fires the same button click event and thus causing duplicate inserts. There are many ways to do this.
1. Redirect to the same page after insert is done.
Response.Redirect(Request.Url.AbsoluteUri);
2. Put RequiredFieldValidator and clear all the form fields after insert. Also put logic for preventing duplicate data insert in db.
3.
[Recommended]
Please follow these links to do it using session & viewstate.
Avoid Duplicate record insert on page refresh using ASP.NET[
^]
Avoid inserting twice when user refresh page in ASP.NET[
^]
Hope, it helps :)