>Reload and rebind the data from database is the better way.
>
>But the database and application design not allow me to do that. I have to store the dataset as temporary data and only store all of them into the database when user clicks submit button.
I'd recommend you dump that data into a temporary table and delete the data when it get added to your primary table. You can timestamp the temporary data and delete it occasionally when you deem it timed out.
DataSets in Session are just a bad call if you have even reasonable volume of traffic on your site.