HttpServerUtility.Execute メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在の要求のコンテキストで指定されたリソースのハンドラーを実行し、それを呼び出したページに実行を返します。
オーバーロード
| 名前 | 説明 |
|---|---|
| Execute(String) |
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 |
| Execute(String, Boolean) |
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行し、 QueryString コレクションと Form コレクションをクリアするかどうかを指定します。 |
| Execute(String, TextWriter) |
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterは、実行されたハンドラーからの出力をキャプチャします。 |
| Execute(String, TextWriter, Boolean) |
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterはページからの出力をキャプチャし、ブール型パラメーターはQueryStringコレクションとForm コレクションをクリアするかどうかを指定します。 |
| Execute(IHttpHandler, TextWriter, Boolean) |
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterは、実行されたハンドラーからの出力をキャプチャし、ブール型パラメーターは、QueryStringコレクションとFormコレクションをクリアするかどうかを指定します。 |
Execute(String)
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。
public:
void Execute(System::String ^ path);
public void Execute(string path);
member this.Execute : string -> unit
Public Sub Execute (path As String)
パラメーター
- path
- String
実行する URL パス。
例外
例
次の使用例は、現在のディレクトリの .aspx ページ "Updateinfo.aspx" を表示します。 Updateinfo.aspx ページが表示された後、プログラムの実行が開始ページに戻ります。
Server.Execute("updateinfo.aspx");
Server.Execute("updateinfo.aspx")
注釈
Execute メソッドは、新しいページの実行が完了した後も、元のページの実行を続行します。 Transfer メソッドは、実行を無条件に別のハンドラーに転送します。
ASP.NET は、現在のユーザーが Execute メソッドによって提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は Execute メソッドによって示されるハンドラーを直接呼び出し、新しいリソースの認証および承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
Redirect メソッドではなく、Execute メソッドを使用して、強制的に再認証を行うことができます。 Redirect は、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが IsInRole メソッドを呼び出す前に、Execute メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースを表示するアクセス許可を持っていることを確認できます。
適用対象
Execute(String, Boolean)
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行し、 QueryString コレクションと Form コレクションをクリアするかどうかを指定します。
public:
void Execute(System::String ^ path, bool preserveForm);
public void Execute(string path, bool preserveForm);
member this.Execute : string * bool -> unit
Public Sub Execute (path As String, preserveForm As Boolean)
パラメーター
- path
- String
実行する URL パス。
- preserveForm
- Boolean
例外
例
次の例は、現在の要求で.aspx ページ Updateinfo.aspx を実行し、 QueryString コレクションと Form コレクションを保持する方法を示しています。 プログラムの実行は、 Updateinfo.aspx が表示された後、開始ページに戻ります。
private void Page_Load(Object sender, EventArgs e)
{
Server.Execute("updateinfo.aspx", true);
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
Server.Execute("updateinfo.aspx", True)
End Sub
こちらもご覧ください
適用対象
Execute(String, TextWriter)
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterは、実行されたハンドラーからの出力をキャプチャします。
public:
void Execute(System::String ^ path, System::IO::TextWriter ^ writer);
public void Execute(string path, System.IO.TextWriter writer);
member this.Execute : string * System.IO.TextWriter -> unit
Public Sub Execute (path As String, writer As TextWriter)
パラメーター
- path
- String
実行する URL パス。
- writer
- TextWriter
出力をキャプチャする TextWriter 。
例外
例
次の例では、現在のディレクトリ内のサーバーで Login.aspx ページを実行し、 StringWriter オブジェクト writerを介してページから出力を受け取ります。
writerから受信した HTML ストリームを HTTP 出力ストリームに書き込みます。
StringWriter writer = new StringWriter();
Server.Execute("Login.aspx", writer);
Response.Write("<H3>Please Login:</H3><br>"+ writer.ToString());
Dim writer As New StringWriter
Server.Execute("Login.aspx", writer)
Response.Write("<H3>Please Login:</H3><br>" & writer.ToString())
注釈
Execute メソッドは、指定された仮想パスの実行が完了した後も、元の要求の実行を続行します。 Transfer メソッドは、実行を無条件に別のハンドラーに転送します。
ASP.NET は、現在のユーザーが Execute メソッドによって提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は Execute メソッドによって示されるハンドラーを直接呼び出し、新しいリソースの認証および承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
Redirect メソッドではなく、Execute メソッドを使用して、強制的に再認証を行うことができます。 Redirect は、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが IsInRole メソッドを呼び出す前に、Execute メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースを表示するアクセス許可を持っていることを確認できます。
こちらもご覧ください
適用対象
Execute(String, TextWriter, Boolean)
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterはページからの出力をキャプチャし、ブール型パラメーターはQueryStringコレクションとForm コレクションをクリアするかどうかを指定します。
public:
void Execute(System::String ^ path, System::IO::TextWriter ^ writer, bool preserveForm);
public void Execute(string path, System.IO.TextWriter writer, bool preserveForm);
member this.Execute : string * System.IO.TextWriter * bool -> unit
Public Sub Execute (path As String, writer As TextWriter, preserveForm As Boolean)
パラメーター
- path
- String
実行する URL パス。
- writer
- TextWriter
出力をキャプチャする TextWriter 。
- preserveForm
- Boolean
例外
現在の HttpContext は null 参照です (Visual Basic では Nothing)。
-又は-
path はピリオド (.) で終わります。
-又は-
pathで指定されたハンドラーの実行中にエラーが発生しました。
path は nullです。
path は仮想パスではありません。
例
次の例では、現在のディレクトリ内のサーバーで Login.aspx ページを実行し、 StringWriter オブジェクト writerを介してページから出力を受け取ります。
writerから受信した HTML ストリームを HTTP 出力ストリームに書き込みます。
FormコレクションとQueryString コレクションの内容は保持されます。
private void Page_Load(Object sender, EventArgs e)
{
System.IO.StringWriter writer = new System.IO.StringWriter();
Server.Execute("Login.aspx", writer, true);
Response.Write("<h3>Please Login:</h3><br />" + writer.ToString());
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
Dim writer As System.IO.StringWriter = New System.IO.StringWriter()
Server.Execute("Login.aspx", writer, True)
Response.Write("<h3>Please Login:</h3><br />" + writer.ToString())
End Sub
注釈
Execute メソッドは、指定された仮想パスの実行が完了した後も、元の要求の実行を続行します。 Transfer メソッドは、実行を無条件に別のハンドラーに転送します。
ASP.NET は、現在のユーザーが Execute メソッドによって提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は Execute メソッドによって示されるハンドラーを直接呼び出し、新しいリソースの認証および承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
Redirect メソッドではなく、Execute メソッドを使用して、強制的に再認証を行うことができます。 Redirect は、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが IsInRole メソッドを呼び出す前に、Execute メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースを表示するアクセス許可を持っていることを確認できます。
こちらもご覧ください
適用対象
Execute(IHttpHandler, TextWriter, Boolean)
現在の要求のコンテキストで、指定された仮想パスのハンドラーを実行します。 TextWriterは、実行されたハンドラーからの出力をキャプチャし、ブール型パラメーターは、QueryStringコレクションとFormコレクションをクリアするかどうかを指定します。
public:
void Execute(System::Web::IHttpHandler ^ handler, System::IO::TextWriter ^ writer, bool preserveForm);
public void Execute(System.Web.IHttpHandler handler, System.IO.TextWriter writer, bool preserveForm);
member this.Execute : System.Web.IHttpHandler * System.IO.TextWriter * bool -> unit
Public Sub Execute (handler As IHttpHandler, writer As TextWriter, preserveForm As Boolean)
パラメーター
- handler
- IHttpHandler
現在の要求を転送する IHttpHandler を実装する HTTP ハンドラー。
- writer
- TextWriter
出力をキャプチャする TextWriter 。
- preserveForm
- Boolean
例外
handlerで指定されたハンドラーの実行中にエラーが発生しました。
handler パラメーターはnull。
注釈
共通言語仕様 (CLS) に準拠している任意の言語で、特定の定義済みの種類の HTTP 要求を処理するカスタム HTTP ハンドラーを記述できます。 従来の ASP (従来の ASP) ページまたは ASP.NET ページではなく、HTTP ハンドラー クラスで定義されている実行可能コードは、これらの特定の要求に応答します。 HTTP ハンドラーを使用すると、インターネット インフォメーション サービス (IIS) を実行している Web サーバーの低レベルの要求および応答サービスを操作できます。また、ISAPI 拡張機能に似ていますが、プログラミング モデルがシンプルな機能を提供します。
ASP.NET は、現在のユーザーが、Execute メソッドによって提供されるリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認および認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は、Execute メソッドによって示されるハンドラーを直接呼び出し、新しいリソースの認証および承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースへのアクセスを取得するための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
Redirect メソッドではなく、Execute メソッドを使用して、強制的に再認証を行うことができます。 Redirectは、ブラウザーが新しいリソースを要求するクライアント側のリダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、IIS と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが IsInRole メソッドを呼び出す前に、Execute メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースを表示するアクセス許可を持っていることを確認できます。