ASP.NET で ASP セッション状態を無効にする方法

Microsoft Active Server Pages を使用してこの作業を実行する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。

244465
[HOWTO] Active Server Pages で ASP セッションの状態を無効にする

この資料の内容

概要

この資料では、ASP.NET でセッション状態を無効にする方法について手順を追って説明します。


ASP.NET でセッション状態が有効になっていると、アプリケーションにアクセスするユーザーごとに 1 つのセッションが作成され、アプリケーション内のページ間でユーザーを識別するのに使用されます。セッション状態が無効になっている場合には、ユーザー データは追跡されず、情報を Session オブジェクトに格納したり、Session_OnStart や Session_OnEnd イベントを使用したりすることはできません。アプリケーションまたはページでセッション状態を有効にする必要がない場合には、セッション状態を無効にすることによってパフォーマンスを上げることができます。


ASP.NET で、データの格納に Session オブジェクトを使用しない場合、または Session イベント (Session_OnStart または Session_OnEnd) が処理された場合、セッション状態は無効になります。1 つのブラウザ セッション内で 1 つのページが更新されるたびに、新しい Session.SessionID が作成されます。


アプリケーション レベルでセッション状態を無効にする

以下の手順は、アプリケーション レベルでセッション状態を無効にする方法を示しています。これは、アプリケーション内のすべてのページに影響します。

  1. Microsoft Visual Studio .NET を起動し、新しい ASP.NET Web アプリケーションを作成します。
  2. ソリューション エクスプローラで、Web.config をダブルクリックし、ファイルの内容を表示します。
  3. <sessionState> セクションを探し、mode 値を Off に設定します。
  4. ファイルまたはプロジェクトを保存すると、アプリケーション内のすべてのページでセッション状態が無効になります。

ページ レベルでセッション状態を無効にする

以下の手順は、ページ レベルでセッション状態を無効にする方法を示しています。これは、変更を有効にした特定のページにのみ影響します。

  1. Microsoft Visual Studio .NET を起動し、新しい ASP.NET Web アプリケーションを作成します。
  2. ソリューション エクスプローラで、セッション状態を無効にする Web フォームをダブルクリックします。
  3. [HTML] タブをクリックします。
  4. ページの先頭で、@ Page ディレクティブの中に EnableSessionState="false" を追加します。修正後の属性は、次のようになります。
    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" 
    AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
    EnableSessionState="false" %>
  5. ファイルまたはプロジェクトを保存すると、アプリケーション内のすべてのページでセッション状態が無効になります。

トラブルシューティング

セッション状態が無効になっているときに情報を設定または取得しようとすると、次のエラー メッセージが表示されます。
セッション状態は、構成ファイルまたは Page ディレクティブで enableSessionState が True に設定されている場合に限り使用できます。

関連情報

セッション状態の詳細については、.NET Framework Software Development Kit (SDK) ドキュメントの以下のトピックを参照してください。

プロパティ

文書番号:306996 - 最終更新日: 2008/07/14 - リビジョン: 1

フィードバック