HttpServerUtility.Transfer メソッド

定義

現在のページの実行を終了し、現在の要求に対して新しいページの実行を開始します。

オーバーロード

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、コレクションとコレクションFormQueryString保持します。

Transfer 呼び出し End。完了時に例外が ThreadAbortException スローされます。

ASP.NET は、現在のユーザーがメソッドによってTransfer配信されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認と認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET はメソッドによって示されるハンドラーをTransfer直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。

メソッドの代わりにメソッドを使用して、強制的に Redirect 再認証することができます Transfer 。 このメソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。

ユーザーがリソースを表示するアクセス許可を持っていることを確認するには、アプリケーションがメソッドを呼び出す前に、そのメソッドを IsInRole 使用するカスタム承認メソッドを Transfer 組み込みます。

適用対象

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 コレクションを保持する場合は、trueQueryString コレクションおよび Form コレクションをクリアする場合は、false

例外

現在のページ要求がコールバックです。

次の例では、現在のページと同じディレクトリに新しいページを実行します。

Server.Transfer("Logon.aspx", true);

Server.Transfer("Logon.aspx", true)

注釈

転送されるページは、別の .aspx ページである必要があります。 たとえば、.asp または .asmx ページへの転送は無効です。

Transfer 呼び出し End。完了時に例外が ThreadAbortException スローされます。

パラメーターtruepreserveForm設定すると、ターゲット ページは、プロパティを使用して前のページのビューステートにPreviousPageアクセスできるようになります。

セキュリティ上の理由から、属性は次の値に enableViewStateMac 設定したままにする true必要があります。 ASP.NET は、現在のユーザーがメソッドによってTransfer配信されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認と認証ロジックは、元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET はメソッドによって示されるハンドラーをTransfer直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。

メソッドの代わりにメソッドを使用して、強制的に Redirect 再認証することができます Transfer 。 このメソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、インターネット インフォメーション サービス (IIS) と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。

ユーザーがリソースを表示するアクセス許可を持っていることを確認するには、アプリケーションがメソッドを呼び出す前に、そのメソッドを IsInRole 使用するカスタム承認メソッドを Transfer 組み込みます。

適用対象

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 コレクションを保持する場合は、trueQueryString コレクションおよび Form コレクションをクリアする場合は、false

例外

現在のページ要求がコールバックです。

注釈

カスタム HTTP ハンドラーを記述して、共通言語仕様 (CLS) に準拠している任意の言語で特定の定義済みの種類の HTTP 要求を処理できます。 従来の ASP (従来の ASP) ページまたは ASP.NET ページの代わりに HTTP ハンドラー クラスで定義されている実行可能コードは、これらの特定の要求に応答します。 HTTP ハンドラーを使用すると、インターネット インフォメーション サービス (IIS) を実行している Web サーバーの低レベルの要求および応答サービスを操作でき、ISAPI 拡張機能に似ていますが、より単純なプログラミング モデルを使用する機能が提供されます。

パラメーターtruepreserveForm設定すると、ターゲット ページは、プロパティを使用して前のページのビューステートにPreviousPageアクセスできるようになります。

セキュリティ上の理由から、属性は次の値に enableViewStateMac 設定したままにする true必要があります。 ASP.NET は、現在のユーザーがメソッドによってTransfer配信されたリソースを表示する権限を持っていることを確認しません。 ASP.NET 承認および認証ロジックは元のリソース ハンドラーが呼び出される前に実行されますが、ASP.NET はメソッドによって示されるハンドラーをTransfer直接呼び出し、新しいリソースの認証と承認ロジックを再実行しません。 アプリケーションのセキュリティ ポリシーで、クライアントがリソースにアクセスするための適切な承認を必要とする場合、アプリケーションは強制的に再認証するか、カスタム アクセス制御メカニズムを提供する必要があります。

メソッドの代わりにメソッドを使用して、強制的に Redirect 再認証することができます Transfer 。 このメソッドは Redirect 、ブラウザーが新しいリソースを要求するクライアント側リダイレクトを実行します。 このリダイレクトはシステムに入る新しい要求であるため、IIS と ASP.NET セキュリティ ポリシーの両方のすべての認証および承認ロジックが適用されます。

ユーザーがリソースを表示するアクセス許可を持っていることを確認するには、アプリケーションがメソッドを呼び出す前に、そのメソッドを IsInRole 使用するカスタム承認メソッドを Transfer 組み込みます。

適用対象