Neither GridView or ObjectDataSource persists entities among requests. When you trigger data modification event on the GridView a new instance of object is created for you. It is not the same entity you used to fill the grid - those instances are lost.
Btw. using STEs in web application and storing entities among requests is probably the worst usage I can ever imagine. Everybody is trying to reduce their memory footprint in web app as well as amount of transferred data between client and server and you are going exactly opposite direction.