ViewStateException クラスとは? わかりやすく解説

ViewStateException クラス

メモ : このクラスは、.NET Framework version 2.0新しく追加されたものです。

ビューステート読み込みまたは検証できない場合スローされる例外表します。このクラス継承できません。

名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)
構文構文

<SerializableAttribute> _
Public NotInheritable Class
 ViewStateException
    Inherits Exception
    Implements ISerializable
Dim instance As ViewStateException
[SerializableAttribute] 
public sealed class ViewStateException : Exception,
 ISerializable
[SerializableAttribute] 
public ref class ViewStateException sealed
 : public Exception, ISerializable
/** @attribute SerializableAttribute() */ 
public final class ViewStateException extends
 Exception implements ISerializable
SerializableAttribute 
public final class ViewStateException extends
 Exception implements ISerializable
解説解説

ページビューステート情報読み込まれるときに例外発生した場合ViewStateException オブジェクト作成され、HttpException 例外内の内部例外として渡されます。HttpException 例外は再スローされ、アプリケーションにより処理されます。

ViewStateException クラスは、Message プロパティ例外に関する情報格納します。ServerVariables プロパティアクセスするためのアクセス許可要求持っている場合Message プロパティには、RemoteAddress、RemotePort、UserAgent、PersistedState、Referer、および Path の各プロパティから返された値が設定されます。それ以外場合Message プロパティには一般的なビューステート エラー メッセージ設定されます。

ビューステート例外は、メッセージ認証コード (MAC: Message Authentication Code) 検証エラー結果である場合ありますページenableViewStateMac 属性true設定されている場合ビューステート情報MAC 識別子使用してエンコードされますビューステート情報サーバーポストバックされると、ページではエンコーディング検証してユーザーによって変更されていないことを確認しますビューステート情報MAC エンコーディング検証できない場合内部例外として ViewStateException指定した HttpException 例外ページスローます。

MAC 検証成功するには、送信時受信時に同じキー使ってビューステート情報ハッシュする必要がありますWeb ファーム内では、各サーバーマシン キーを共通キー設定する必要があります

使用例使用例

base64 エンコードされた文字列を逆シリアル化して、プロパティ設定の ICollection コレクション返すメソッド実装方法次のコード例示します。Deserialize メソッドは、ViewStateException オブジェクト内部例外として持つ HttpException 例外スローできます。この例では、HttpException 例外キャッチして、ViewStateException オブジェクトからプロパティ取得する方法示します

Private Function LoadControlProperties(ByVal
 serializedProperties As String) As
 ICollection

    Dim controlProperties As ICollection =
 Nothing

    ' Create an ObjectStateFormatter to deserialize the properties.
    Dim formatter As New
 ObjectStateFormatter()

    Try
        ' Call the Deserialize method.
        controlProperties = CType(formatter.Deserialize(serializedProperties), ArrayList)
    Catch e As HttpException
        Dim vse As ViewStateException
        Dim logMessage As String

        vse = e.InnerException

        logMessage = "ViewStateException. Path: "
 + vse.Path + Environment.NewLine
        logMessage += "PersistedState: " + vse.PersistedState
 + Environment.NewLine
        logMessage += "Referer: " + vse.Referer +
 Environment.NewLine
        logMessage += "UserAgent: " + vse.UserAgent
 + Environment.NewLine

        LogEvent(logMessage)

        If (vse.IsConnected) Then
            HttpContext.Current.Response.Redirect("ErrorPage.aspx")
        Else
            Throw e
        End If
    End Try
    Return controlProperties
End Function 'LoadControlProperties
   
private ICollection LoadControlProperties(string
 serializedProperties)
{

    ICollection controlProperties = null;

    // Create an ObjectStateFormatter to deserialize the properties.
    ObjectStateFormatter formatter = new ObjectStateFormatter();

    try
    {
        // Call the Deserialize method.
        controlProperties = (ArrayList)formatter.Deserialize(serializedProperties);
    }
    catch (HttpException e)
    {
        ViewStateException vse = (ViewStateException)e.InnerException;
        String logMessage;

        logMessage = "ViewStateException. Path: " + vse.Path + Environment.NewLine;
        logMessage += "PersistedState: " + vse.PersistedState + Environment.NewLine;
        logMessage += "Referer: " + vse.Referer + Environment.NewLine;
        logMessage += "UserAgent: " + vse.UserAgent + Environment.NewLine;

        LogEvent(logMessage);

        if (vse.IsConnected)
        {
            HttpContext.Current.Response.Redirect("ErrorPage.aspx");
        }
        else
        {
            throw e;
        }
    }
    return controlProperties;
}
.NET Framework のセキュリティ.NET Frameworkセキュリティ
継承階層継承階層
System.Object
   System.Exception
    System.Web.UI.ViewStateException
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ViewStateException メンバ
System.Web.UI 名前空間
MachineKeySection
その他の技術情報
@ Page


このページでは「.NET Framework クラス ライブラリ リファレンス」からViewStateException クラスを検索した結果を表示しています。
Weblioに収録されているすべての辞書からViewStateException クラスを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からViewStateException クラス を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ViewStateException クラス」の関連用語

ViewStateException クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ViewStateException クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS