DefaultHttpHandler クラス
アセンブリ: System.Web (system.web.dll 内)


DefaultHttpHandler オブジェクトは、送受信両方の要求受け取りが Microsoft Internet Information Services (IIS) バージョン 6.0 を使用して構成されており、要求された拡張に httpHandlers バインディングが明示的に適用されていない場合に、HTTP パイプラインで受信要求を受け取ります。
要求受け取りは、IIS 6.0 で導入されたワイルドカード アプリケーション マッピング機能を使用して設定できます。詳細については、MSDN ライブラリで、ワイルドカード アプリケーション マップを使用した URL のリマップに関する情報を参照してください。
DefaultHttpHandler クラスは、IHttpAsyncHandler インターフェイスを実装して、非同期要求処理を提供します。HTTP ハンドラの概要については、「HTTP ハンドラを使用したカスタム ASP.NET 処理」を参照してください。また、次の情報も参考にしてください。
クラスが、DefaultHttpHandler クラスの派生クラスを作成して、カスタマイズされた要求処理を提供できます。DefaultHttpHandler から派生した非同期 HTTP ハンドラは、BeginProcessRequest メソッドをオーバーライドして、要求の処理方法を変更できます。
DefaultHttpHandler では、ASP.NET エラーを使用しません。IIS エラーまたは独自の ISAPI カスタム エラー機構を使用する既存のコンテンツは、変更なしで動作します。

DefaultHttpHandler クラスの派生を使用して、カスタマイズされた HTTP ハンドラを実装する方法のコード例を次に示します。
Public Class defaulthttpexampleVB Inherits DefaultHttpHandler Private _context As HttpContext Public Overrides Function BeginProcessRequest _ (ByVal context As HttpContext, _ ByVal callback As AsyncCallback, _ ByVal state As Object) As IAsyncResult Dim ar As New AsyncResultSample(callback, state) _context = context Return (ar) End Function Public Overrides Sub EndProcessRequest(ByVal result As IAsyncResult) _context.Response.Write("EndProcessRequest called.") End Sub ' This method should not be called asynchronously. Public Overrides Sub ProcessRequest(ByVal context As HttpContext) Throw New InvalidOperationException _ ("Asynchronous processing failed.") End Sub ' Enables pooling when set to true Public Overrides ReadOnly Property IsReusable() As Boolean Get Return True End Get End Property End Class ' Tracks state between the begin and end calls. Class AsyncResultSample Implements IAsyncResult Private callback As AsyncCallback = Nothing Private _asyncState As Object Private _isCompleted As Boolean Friend Sub New(ByVal cb As AsyncCallback, ByVal state As Object) Me.callback = cb _asyncState = state _isCompleted = False End Sub Public ReadOnly Property AsyncState() As Object _ Implements IAsyncResult.AsyncState Get Return _asyncState End Get End Property Public ReadOnly Property CompletedSynchronously() _ As Boolean Implements IAsyncResult.CompletedSynchronously Get Return False End Get End Property Public ReadOnly Property AsyncWaitHandle() _ As WaitHandle Implements IAsyncResult.AsyncWaitHandle Get Throw New InvalidOperationException _ ("ASP.NET should not use this property .") End Get End Property Public ReadOnly Property IsCompleted() _ As Boolean Implements IAsyncResult.IsCompleted Get Return IsCompleted End Get End Property Friend Sub SetCompleted() _isCompleted = True If (callback <> Nothing) Then callback(Me) End If End Sub End Class
public class AsyncDefaultHttpHandler : DefaultHttpHandler { private HttpContext _context; public override IAsyncResult BeginProcessRequest( HttpContext context, AsyncCallback callback, object state) { AsyncResultSample ar = new AsyncResultSample(callback, state); _context = context; return ar; } public override void EndProcessRequest(IAsyncResult result) { _context.Response.Write("EndProcessRequest called."); } // This method should not be called asynchronously. public override void ProcessRequest(HttpContext context) { throw new InvalidOperationException( "Asynchronous processing failed."); } // Enables pooling when set to true public override bool IsReusable { get { return true; } } } // Tracks state between the begin and end calls. class AsyncResultSample : IAsyncResult { private AsyncCallback callback = null; private Object asyncState; private Boolean isCompleted; internal AsyncResultSample(AsyncCallback cb, Object state) { this.callback = cb; asyncState = state; isCompleted = false; } public object AsyncState { get { return asyncState; } } public bool CompletedSynchronously { get { return false; } } public WaitHandle AsyncWaitHandle { get { throw new InvalidOperationException( "ASP.NET should not use this property ."); } } public bool IsCompleted { get { return isCompleted; } } internal void SetCompleted() { isCompleted = true; if (callback != null) { callback(this); } } }


System.Web.DefaultHttpHandler


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DefaultHttpHandler コンストラクタ
アセンブリ: System.Web (system.web.dll 内)


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


DefaultHttpHandler プロパティ


名前 | 説明 | |
---|---|---|
![]() | Context | 現在の DefaultHttpHandler オブジェクトに関連付けられているコンテキストを取得します。 |
![]() | ExecuteUrlHeaders | 要求と共に転送する要求ヘッダーと要求値のコレクションを取得します。 |

DefaultHttpHandler メソッド

名前 | 説明 | |
---|---|---|
![]() | BeginProcessRequest | HTTP ハンドラの非同期の呼び出しを開始します。 |
![]() | EndProcessRequest | 非同期処理の終了メソッドを提供します。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | OnExecuteUrlPreconditionFailure | 実行前の状態が原因で DefaultHttpHandler オブジェクトが要求を処理できない場合に呼び出されます。 |
![]() | OverrideExecuteUrlPath | 現在の要求の対象 URL をオーバーライドします。 |
![]() | ProcessRequest | DefaultHttpHandler オブジェクトを有効にして、HTTP Web 要求を処理します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

DefaultHttpHandler メンバ
既定の HTTP ハンドラのプロパティとメソッドを表します。
DefaultHttpHandler データ型で公開されるメンバを以下の表に示します。



名前 | 説明 | |
---|---|---|
![]() | Context | 現在の DefaultHttpHandler オブジェクトに関連付けられているコンテキストを取得します。 |
![]() | ExecuteUrlHeaders | 要求と共に転送する要求ヘッダーと要求値のコレクションを取得します。 |

名前 | 説明 | |
---|---|---|
![]() | BeginProcessRequest | HTTP ハンドラの非同期の呼び出しを開始します。 |
![]() | EndProcessRequest | 非同期処理の終了メソッドを提供します。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | OnExecuteUrlPreconditionFailure | 実行前の状態が原因で DefaultHttpHandler オブジェクトが要求を処理できない場合に呼び出されます。 |
![]() | OverrideExecuteUrlPath | 現在の要求の対象 URL をオーバーライドします。 |
![]() | ProcessRequest | DefaultHttpHandler オブジェクトを有効にして、HTTP Web 要求を処理します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- DefaultHttpHandlerのページへのリンク