This is an old dilemma, but some may still have issues with it. When you build a site using ASP.NET and WebForms, you often will see a bulky hidden field on the form called “ViewState”. Of course, this is the values of your ViewState on the form which can be quite large depending on the values on your form and type of controls.
Since the ViewState field is placed at the top part of your form, this means that you can have large amounts of text before you ever get to the main part of your form. Even though hidden, it can hinder some search engines to clearly discern the content on the page.
There are different ways you can solve this issue, even up to disabling ViewState and not using it. You really do not have to go to that drastic step though, you can always move it. Yep, there are different ways you can actually move the field to the bottom of your form so that it does not hinder search engines even when it grows large.
Not that long ago, I found a quick and easy way to handle this situation. Mads Kriestensen posted a solution that only requires dropping a class file into your App_Code directory and added ah HTTPModule line to your web.config, no code changes.
Here is the original blog post:
http://blog.madskristensen.dk/post/An-HttpModule-that-moves-ViewState-to-the-bottom.aspx
You will want to scan down the comments though, there is a solution down on the list by “Icy” to replace the “Write” method. That addition seemed to work well for me. I have the entire text of the ViewstateModule.cs file as Toolbox Text item so that I create a new class file and just paste in all the text. It is better than hunting down the file at times ;)