I think you require to read article once again there no need of lazy loading at all ? its totaly out of scope of this article ............................. and view sate here is just to store the property value which i think not going to cost more on performance
Check my new article : http://www.codeproject.com/KB/aspnet/LINQ_TO_SQL_GridView.aspx
I've written this same code about 20 times, except I had all kinds of funk going on outside the control and overriding the select method of the datasource controls and stuff. this is a much nicer way to do it.