I have a razor view that renders a html form and it posts to the server.
If the form values are right then it gets saved to database.
After insertion, I redirect to another view where user can make further changes.
Right now the user can hit browser back button and resubmit the form to create another record in db.
How do I prevent duplicate submission in my MVC app?
One solution is to put a hidden “token” field on the form that’s generated randomly when the form loads. When you see that token come back on creation store it somewhere temporarily (in session if you’re using sessions for example). If you see the same one again, you can assume the same form was submitted twice quickly together.