ユーザーを別のページの概要にリダイレクト
4194 ワード
msdn上のアドレス:
ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_aspnetcon/html/d47c522f-8837-47c6-a782-b21319e21197.htm
ユーザーをWebアプリケーションの別のページにリダイレクトする必要があることがよくあります.ASP.NETでは、Webページでリダイレクトを生成する方法を以下に示します.ページでハイパーリンク を使用は、現在のページの発行時に代替ターゲットページを指定できるように、ページ間送信を構成します. は、ブラウザに別のページを要求するように強制することによって、プログラミング的にリダイレクトする. は、同じWebアプリケーション内の別のページにコントロールを転送することによって、プログラミング方式でリダイレクトする.
各オプションについて説明します.このトピックの最後の表では、これらのオプションをまとめ、各オプションをいつ使用するかを決定するためのガイドラインを示します.
ハイパーリンク
ターゲット・ページで新しいリクエストを実行します. は、現在のページの情報をターゲットページに渡さない. は、ユーザの起動を必要とする. は、同じWebアプリケーションのページだけでなく、任意のページにリダイレクトすることができる. では、クエリー文字列またはセッションステータスを使用してページ間で情報を共有できます.(HyperLinkコントロールでは、URLとクエリー文字列をプログラミングで作成できます.) は、他の処理を行わないナビゲーションについて、リンクされたメニューまたはリストと同じである. が別のページに移動し、ユーザによって制御されるべきである場合.
ページをまたいで送信は、現在のページ情報をターゲットページに送信する. は、送信情報をターゲットページで利用可能にする. は、ユーザの起動を必要とする. は、同じWebアプリケーションのページだけでなく、任意のページにリダイレクトすることができる. これらのページが同じWebアプリケーションにある場合、ターゲットページはソースページの共通属性を読み取ることができる. は、現在のページの情報をターゲットページ(複数ページフォームと同じ)に渡すために使用されます. ナビゲーションがユーザによって制御されるべきである場合.
ブラウザのリダイレクトターゲット・ページで新しいリクエストを実行します. クエリー文字列をターゲットページに渡します. は、ターゲットURLおよびクエリ文字列のプログラミング制御および動的制御を提供する. では、同じWebアプリケーションのページだけでなく、任意のページにリダイレクトできます. では、セッション状態のソース・ページの情報を格納し、ターゲット・ページと共有するようにリダイレクトできます. は条件付きナビゲーションに使用され、ターゲットURLといつナビゲーションするかを制御する必要がある場合に使用されます.たとえば、アプリケーションがユーザーが提供したデータに基づいてナビゲートするページを決定する必要がある場合は、このオプションを使用します.
サーバ転送は、ソースページの位置に表示される新しいページにコントロールを転送する. は、ソース・ページと同じWebアプリケーションにあるターゲット・ページにのみリダイレクトします. では、ソース・ページから値と共通属性を読み取ることができます. は、ターゲットページに関する情報を使用してブラウザ情報を更新しません.ブラウザで[更新](Refresh)ボタンまたは[戻る](Back)ボタンを押すと、予期せぬ動作が発生する可能性があります. は、条件付きナビゲーションに使用され、ソース・ページにアクセスするコンテキストを制御する必要がある場合に使用されます. このオプションは、ユーザにURLを非表示にする場合に最適です.
ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_aspnetcon/html/d47c522f-8837-47c6-a782-b21319e21197.htm
ユーザーをWebアプリケーションの別のページにリダイレクトする必要があることがよくあります.ASP.NETでは、Webページでリダイレクトを生成する方法を以下に示します.
各オプションについて説明します.このトピックの最後の表では、これらのオプションをまとめ、各オプションをいつ使用するかを決定するためのガイドラインを示します.
ハイパーリンク
ASP.NETページではHTML測位点マーク(<a>
)を使用して静的リンクを作成するか、HyperLinkコントロールを使用してハイパーリンクのリンクテキストと宛先URLをプログラミングで制御することができます.この場合、ユーザーは明示的にリンクをクリックし、ブラウザはターゲットページに移動します.ターゲットページは、HTTP GETコマンドを使用して呼び出されます.したがって、ターゲット・ページのURLにクエリー文字列を指定しない限り、ソース・ページに関する情報はターゲット・ページに渡されません.ソース・ページとターゲット・ページが同じWebアプリケーションにある場合は、セッション・ステータスまたはアプリケーション・ステータスを使用して情報を共有できます.
ページをまたいで送信
デフォルトでは、ASP.NETページのボタンは、ページ自体に送信されます.ページにまたがる送信によりASP.NETページでは、現在のページを別のページに送信するためのボタンを設定します.典型的な例は、複数ページのフォームを作成するときに、ページにボタンを設定してフォームの次のページと前のページに移動できます.
ページ間送信とハイパーリンクの類似点は、ユーザ操作によって転送を開始することである.ただし、クロスページ送信では、ソースページ上のコントロールの値をターゲットページに送信するHTTP POSTコマンドを使用して呼び出されます.また、ソース・ページとターゲット・ページが同じWebアプリケーションにある場合、ターゲット・ページはソース・ページの共通属性にアクセスできます.アプリケーション内のすべてのページは、セッション・ステータスまたはアプリケーション・ステータスに格納されている情報を常に共有できます.
詳細については、ASP.を参照してください.NETのウェブページの中のクロスページの発送とどのように:ASPをNETページは別ページに送信されます.
ブラウザを使用してプログラミングでリダイレクト
Redirectメソッドを呼び出すことで、プログラミングでリダイレクトできます(つまり、ユーザーの介入を必要とせずに、ブラウザに新しいページを開くように強制します).このメソッドは、ユーザーのブラウザにコマンドを送信し、ブラウザによってターゲットページを取得します.Redirectメソッドを呼び出すには、ハイパーリンクのプログラミング等価形式をクリックし、ターゲットページに対する新しいリクエスト(HTTP GETコマンド)も生成します.独自のコードを使用してRedirectメソッドを呼び出すため、アプリケーションの要求に応じてターゲットURL(クエリー文字列情報を含む)を動的に定義できます.ハイパーリンクと同様に、Redirectメソッドはターゲットページに送信情報を伝達しません.ソース・ページとターゲット・ページが同じWebアプリケーションにある場合、ソース・ページとターゲット・ページの間でデータを共有するには、セッション・ステータスにデータを格納します.
サーバ上でプログラミングでリダイレクト
Transferメソッドを呼び出すことで、サーバ上でプログラミングでターゲットページにリダイレクトすることもできます.この場合、サーバは現在のソース・ページのコンテキストをターゲット・ページに転送するだけです.ターゲット・ページがソース・ページの場所に表示されます.ソース・ページとターゲット・ページは、同じWebアプリケーションにある必要があります.Transferメソッドは、ページ間送信と同様に、ターゲット・ページがソース・ページからコントロール値と共通属性値を読み込むことを可能にする利点もあります.
ソース・ページとターゲット・ページの間の転送はサーバ上で行われるため、ブラウザには変更後のページに関する情報はありません.元の(ソース)URLに関する情報は保持されます.たとえば、Internet Explorerの「アドレス」ボックスは、転送を実行した後も変更されず、最近要求されたページ(通常はソースページ)のURLを表示し続けます.また、ブラウザの履歴は更新されず、転送プロセスを反映します.ユーザーがブラウザでページをリフレッシュしたり、ブラウザの「戻る」ボタンをクリックしたりすると、予期せぬ動作を起こす可能性があります.したがって,URLを隠すようにユーザにページを提示するアプリケーションでは,Transferメソッドを呼び出すのが最適なポリシーである.
リダイレクト・オプションの選択
次の表は、ページ間でリダイレクトする可能性のある方法をまとめています.
ポリシー
とくせい
使用法
ハイパーリンク
デフォルトでは、ASP.NETページのボタンは、ページ自体に送信されます.ページにまたがる送信によりASP.NETページでは、現在のページを別のページに送信するためのボタンを設定します.典型的な例は、複数ページのフォームを作成するときに、ページにボタンを設定してフォームの次のページと前のページに移動できます.
ページ間送信とハイパーリンクの類似点は、ユーザ操作によって転送を開始することである.ただし、クロスページ送信では、ソースページ上のコントロールの値をターゲットページに送信するHTTP POSTコマンドを使用して呼び出されます.また、ソース・ページとターゲット・ページが同じWebアプリケーションにある場合、ターゲット・ページはソース・ページの共通属性にアクセスできます.アプリケーション内のすべてのページは、セッション・ステータスまたはアプリケーション・ステータスに格納されている情報を常に共有できます.
詳細については、ASP.を参照してください.NETのウェブページの中のクロスページの発送とどのように:ASPをNETページは別ページに送信されます.
ブラウザを使用してプログラミングでリダイレクト
Redirectメソッドを呼び出すことで、プログラミングでリダイレクトできます(つまり、ユーザーの介入を必要とせずに、ブラウザに新しいページを開くように強制します).このメソッドは、ユーザーのブラウザにコマンドを送信し、ブラウザによってターゲットページを取得します.Redirectメソッドを呼び出すには、ハイパーリンクのプログラミング等価形式をクリックし、ターゲットページに対する新しいリクエスト(HTTP GETコマンド)も生成します.独自のコードを使用してRedirectメソッドを呼び出すため、アプリケーションの要求に応じてターゲットURL(クエリー文字列情報を含む)を動的に定義できます.ハイパーリンクと同様に、Redirectメソッドはターゲットページに送信情報を伝達しません.ソース・ページとターゲット・ページが同じWebアプリケーションにある場合、ソース・ページとターゲット・ページの間でデータを共有するには、セッション・ステータスにデータを格納します.
サーバ上でプログラミングでリダイレクト
Transferメソッドを呼び出すことで、サーバ上でプログラミングでターゲットページにリダイレクトすることもできます.この場合、サーバは現在のソース・ページのコンテキストをターゲット・ページに転送するだけです.ターゲット・ページがソース・ページの場所に表示されます.ソース・ページとターゲット・ページは、同じWebアプリケーションにある必要があります.Transferメソッドは、ページ間送信と同様に、ターゲット・ページがソース・ページからコントロール値と共通属性値を読み込むことを可能にする利点もあります.
ソース・ページとターゲット・ページの間の転送はサーバ上で行われるため、ブラウザには変更後のページに関する情報はありません.元の(ソース)URLに関する情報は保持されます.たとえば、Internet Explorerの「アドレス」ボックスは、転送を実行した後も変更されず、最近要求されたページ(通常はソースページ)のURLを表示し続けます.また、ブラウザの履歴は更新されず、転送プロセスを反映します.ユーザーがブラウザでページをリフレッシュしたり、ブラウザの「戻る」ボタンをクリックしたりすると、予期せぬ動作を起こす可能性があります.したがって,URLを隠すようにユーザにページを提示するアプリケーションでは,Transferメソッドを呼び出すのが最適なポリシーである.
リダイレクト・オプションの選択
次の表は、ページ間でリダイレクトする可能性のある方法をまとめています.
ポリシー
とくせい
使用法
ハイパーリンク
Transferメソッドを呼び出すことで、サーバ上でプログラミングでターゲットページにリダイレクトすることもできます.この場合、サーバは現在のソース・ページのコンテキストをターゲット・ページに転送するだけです.ターゲット・ページがソース・ページの場所に表示されます.ソース・ページとターゲット・ページは、同じWebアプリケーションにある必要があります.Transferメソッドは、ページ間送信と同様に、ターゲット・ページがソース・ページからコントロール値と共通属性値を読み込むことを可能にする利点もあります.
ソース・ページとターゲット・ページの間の転送はサーバ上で行われるため、ブラウザには変更後のページに関する情報はありません.元の(ソース)URLに関する情報は保持されます.たとえば、Internet Explorerの「アドレス」ボックスは、転送を実行した後も変更されず、最近要求されたページ(通常はソースページ)のURLを表示し続けます.また、ブラウザの履歴は更新されず、転送プロセスを反映します.ユーザーがブラウザでページをリフレッシュしたり、ブラウザの「戻る」ボタンをクリックしたりすると、予期せぬ動作を起こす可能性があります.したがって,URLを隠すようにユーザにページを提示するアプリケーションでは,Transferメソッドを呼び出すのが最適なポリシーである.
リダイレクト・オプションの選択
次の表は、ページ間でリダイレクトする可能性のある方法をまとめています.
ポリシー
とくせい
使用法
ハイパーリンク
ページをまたいで送信
ブラウザのリダイレクト
サーバ転送