ViewStateは小さくまとめましょう

ViewStateって結局ナニよ?

ViewStateは結局のところ、それで保持することにしたデータオブジェクトをXMLにシリアル化してBASE64でASCII化したものをHTMLのhidden要素に格納しているもの。

参照:MSDN(ASP.NETビューステート)、「ビューステートの概要」だけでも読むと良い

参照:熱燗ロックのブログ(ViewStateによるコントロールのプロパティ値復元の仕組み)

参照:MSDN(10 行でズバリ !! ViewState の利用 (C#))

XMLにシリアル化してBASE64エンコードって…

つまり、ちょっとしたデータ入れても結構なデータサイズ(文字数)になるってことだよねー。

なので、無頓着にコードを書いているとビューステートが肥大化していろいろ問題になります。

  • HTTPの転送量が増える
    上り・下りの両方にViewStateのデータが含まれるので、その分は確実に増えます。
  • ViewStateが起因するエラーが発生するようになります
    • BASE64デコード

以下、調査中…

memo:ViweState Decoder

コメントを残す