Share via


方法 : アプリケーション状態から値を読み取る

更新 : 2007 年 11 月

アプリケーション状態は、ASP.NET アプリケーションのすべてのクラスが使用できるデータ リポジトリです。アプリケーション状態はサーバーのメモリに格納されるので、データベースにデータを格納して取得するより高速です。個々のユーザー セッションに固有のセッション状態とは異なり、アプリケーション状態はすべてのユーザーとセッションに適用されます。したがってアプリケーション状態は、ユーザーによって変わることのない、頻繁に使用される少量のデータの格納に便利な場所です。

アプリケーション状態は HttpApplicationState クラスに保存され、そのインスタンスはユーザーがアプリケーションの URL リソースに初めてアクセスする際に新しく作成されます。詳細については、「ASP.NET のアプリケーション状態の概要」を参照してください。

アプリケーション状態には、Object 型でデータが格納されます。したがって、アプリケーション状態にデータを格納する際にシリアル化する必要はありませんが、取得する際には適切な型にキャストする必要があります。null (Visual Basic では Nothing) オブジェクトはキャストできますが、型チェックなどの他の方法で実在しないアプリケーション状態のエントリを使用しようとすると、NullReferenceException 例外がスローされます。

手順

アプリケーション状態から値を読み取るには

  • アプリケーションの変数が存在するかどうかを確認してから、変数にアクセスする際に適切な型に変換します。

    アプリケーション状態の AppStartTime 値を取得し、DateTime 型の appStateTime という変数に変換するコード例を次に示します。

    If (Not Application("AppStartTime") Is Nothing) Then
        Dim myAppStartTime As DateTime = _
            CDate(Application("AppStartTime"))
    End If
    
    if (Application["AppStartTime"] != null)
    {
        DateTime myAppStartTime = (DateTime)Application["AppStartTime"];
    }
    

参照

処理手順

方法 : アプリケーション状態の値を保存する

概念

ASP.NET のアプリケーション状態の概要

ASP.NET の状態管理の概要

ASP.NET の状態管理に関する推奨事項