【ASP.NET】ビューステート(ViewState)

ビューステート/ViewState

 * ポストバックの前後で、ページ(View)の状態(State)を維持するための仕組み(ASP.NET MVCにはない)
 * 一時変数として保持できる

ViewStateの使い方

http://www.atmarkit.co.jp/fdotnet/entwebapp/entwebapp03/entwebapp03_02.html
より

 * その画面内でしか利用されない一時的な軽量のデータ
   →大量なデータは入れられない
 * 重要なデータは含めない
   →どうしても使用する場合は暗号化しておく。詳細は【注意事項】を参照。
   →『解読されても特に問題がない』ようなデータのみを入れるのが基本的な設計セオリー

参考文献

http://d.hatena.ne.jp/fyts/20070807/asp
http://www.atmarkit.co.jp/fdotnet/entwebapp/entwebapp03/entwebapp03_04.html
http://msdn.microsoft.com/ja-jp/magazine/ff797918.aspx

構文

ViewState("キー名 ") [=値]

サンプル

ViewState("Season") = "Summer"

ビューステートの削除

ViewState.Clear()

注意事項

 * ビューステートに機密情報が格納される場合、ページの ViewStateEncryptionMode プロパティを trueに設定することにより、暗号化すること

■web.config
<system.web>
  <pages viewStateEncryptionMode="Always" />
</system.web>

■ページ
<%@ Page Language="VB" ViewStateEncryptionMode="Always" %>
http://msdn.microsoft.com/ja-jp/library/zdh19h94%28v=vs.80%29.aspx#cpconbestsecuritypracticesforwebapplicationsanchor4

関連記事

クッキー(Cookie

http://blogs.yahoo.co.jp/dk521123/28439642.html

ViewState

http://blogs.yahoo.co.jp/dk521123/27605311.html

セッション(Session)

http://blogs.yahoo.co.jp/dk521123/28490495.html

アプリケーション状態管理(Applicationオブジェクト)

http://blogs.yahoo.co.jp/dk521123/27476083.html

値の受け渡し

http://blogs.yahoo.co.jp/dk521123/28449946.html