HttpServerUtility.Transfer メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のページの実行を終了し、現在の要求に対して新しいページの実行を開始します。
オーバーロード
Transfer(String) |
現在の要求に対して、現在のページの実行を終了し、指定された URL パスを使用して新しいページの実行を開始します。 |
Transfer(String, Boolean) |
現在のページの実行を終了し、指定された URL パスを使用して新しいページの実行を開始します。 QueryString コレクションと Form コレクションを削除するかどうかを指定します。 |
Transfer(IHttpHandler, Boolean) |
現在のページの実行を終了し、カスタム HTTP ハンドラーを使用して新しい要求の実行を開始します。このハンドラーは、IHttpHandler インターフェイスを実装し、QueryString コレクションおよび Form コレクションをクリアするかどうかを指定します。 |
Transfer(String)
現在の要求に対して、現在のページの実行を終了し、指定された URL パスを使用して新しいページの実行を開始します。
public:
void Transfer(System::String ^ path);
public void Transfer (string path);
member this.Transfer : string -> unit
Public Sub Transfer (path As String)
パラメーター
- path
- String
サーバー上にある、実行する新しいページの URL パス。
注釈
に転送されるページは、別の .aspx ページである必要があります。 たとえば、.asp または .asmx ページへの転送は無効です。 メソッドはTransfer、 コレクションと Form コレクションをQueryString保持します。
Transfer は を呼び出します End。これは、完了時に例外を ThreadAbortException スローします。
ASP.NET は、現在のユーザーが メソッドによって Transfer 提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は メソッドによって示されるハンドラーを Transfer 直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
メソッドの代わりに Transfer メソッドをRedirect使用して、強制的に再認証することができます。 メソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが メソッドを呼び出Transferす前に、 メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースをIsInRole表示するアクセス許可を持っていることを確認できます。
適用対象
Transfer(String, Boolean)
現在のページの実行を終了し、指定された URL パスを使用して新しいページの実行を開始します。 QueryString コレクションと Form コレクションを削除するかどうかを指定します。
public:
void Transfer(System::String ^ path, bool preserveForm);
public void Transfer (string path, bool preserveForm);
member this.Transfer : string * bool -> unit
Public Sub Transfer (path As String, preserveForm As Boolean)
パラメーター
- path
- String
サーバー上にある、実行する新しいページの URL パス。
- preserveForm
- Boolean
QueryString コレクションおよび Form コレクションを保持する場合は、true
。QueryString コレクションおよび Form コレクションをクリアする場合は、false
。
例外
現在のページ要求がコールバックです。
例
次の例では、現在のページと同じディレクトリで新しいページを実行します。
Server.Transfer("Logon.aspx", true);
Server.Transfer("Logon.aspx", true)
注釈
に転送されるページは、別の .aspx ページである必要があります。 たとえば、.asp または .asmx ページへの転送は無効です。
Transfer は を呼び出します End。これは、完了時に例外を ThreadAbortException スローします。
パラメーターを preserveForm
に true
設定すると、 プロパティを使用して、ターゲット ページから前のページのビューステートに PreviousPage アクセスできるようになります。
セキュリティ上の理由から、 属性は enableViewStateMac
に設定したままにする true
必要があります。 ASP.NET は、現在のユーザーが メソッドによって Transfer 提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は メソッドによって示されるハンドラーを Transfer 直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
メソッドの代わりに Transfer メソッドをRedirect使用して、強制的に再認証することができます。 メソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。
アプリケーションが メソッドを呼び出Transferす前に、 メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースをIsInRole表示するアクセス許可を持っていることを確認できます。
適用対象
Transfer(IHttpHandler, Boolean)
現在のページの実行を終了し、カスタム HTTP ハンドラーを使用して新しい要求の実行を開始します。このハンドラーは、IHttpHandler インターフェイスを実装し、QueryString コレクションおよび Form コレクションをクリアするかどうかを指定します。
public:
void Transfer(System::Web::IHttpHandler ^ handler, bool preserveForm);
public void Transfer (System.Web.IHttpHandler handler, bool preserveForm);
member this.Transfer : System.Web.IHttpHandler * bool -> unit
Public Sub Transfer (handler As IHttpHandler, preserveForm As Boolean)
パラメーター
- handler
- IHttpHandler
現在の要求の転送先となる IHttpHandler を実装する HTTP ハンドラー。
- preserveForm
- Boolean
QueryString コレクションおよび Form コレクションを保持する場合は、true
。QueryString コレクションおよび Form コレクションをクリアする場合は、false
。
例外
現在のページ要求がコールバックです。
注釈
カスタム HTTP ハンドラーを記述して、共通言語仕様 (CLS) に準拠している任意の言語で、定義済みの特定の種類の HTTP 要求を処理できます。 従来の ASP (従来の ASP とも呼ばれます) ページまたは ASP.NET ページではなく HTTP ハンドラー クラスで定義されている実行可能コードは、これらの特定の要求に応答します。 HTTP ハンドラーを使用すると、インターネット インフォメーション サービス (IIS) を実行している Web サーバーの低レベルの要求サービスと応答サービスを操作でき、ISAPI 拡張機能に似ていますが、より簡単なプログラミング モデルを備えた機能が提供されます。
パラメーターを preserveForm
に true
設定すると、 プロパティを使用して、ターゲット ページから前のページのビューステートに PreviousPage アクセスできるようになります。
セキュリティ上の理由から、 属性は enableViewStateMac
に設定したままにする true
必要があります。 ASP.NET は、現在のユーザーが メソッドによって Transfer 提供されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認ロジックと認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET は メソッドによって示されるハンドラーを Transfer 直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。
メソッドの代わりに Transfer メソッドをRedirect使用して、強制的に再認証することができます。 メソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、IIS と ASP.NET セキュリティ ポリシーの両方のすべての認証と承認ロジックが適用されます。
アプリケーションが メソッドを呼び出Transferす前に、 メソッドを使用するカスタム承認メソッドを組み込むことで、ユーザーがリソースをIsInRole表示するアクセス許可を持っていることを確認できます。
適用対象
.NET