次のステージにリンクする

C# ASP.NET でボタンをクリックすると、次のステージの URL(*.aspx) を呼び出します。
移動したステージからボタンをクリックすると、元のページに戻ります。

前田稔(Maeda Minoru)の超初心者のプログラム入門

呼び出し側のページ

  1. WebMatrix を起動して [ASP.NET ページ] のアイコンを選択して新しいページを作成します。
  2. ツールボックスから [TextBox] と [Button] をデザインウインドウに貼り付けて下さい。
  3. [TextBox] のプロパティから Text を選択して、仮のユーザーID(User ID) を設定します。
  4. [Button1] をダブルクリックすると、ソースコードが表示されるので、次のコードを追加して下さい。
    redirect2.aspx が呼び出される URL(ページ)の名前です。
    パラメータ(Query)として TextBox からユーザーIDを取得して設定しています。
        // ページのコードをここに記述してください。
        void Button1_Click(object sender, EventArgs e)
        {   String  str;
    
            str = "redirect2.aspx?User=" + TextBox1.Text;
            Response.Redirect(str);
        }
        
  5. 下のタブを「すべて」に切り替えて、ソースコードに名前(redirect.aspx)を付けて保存して下さい。

呼び出されるページ

  1. WebMatrix を起動して [ASP.NET ページ] のアイコンを選択して新しいページを作成します。
  2. ツールボックスから [Button] と [TextBox] をデザインウインドウに貼り付けて下さい。
  3. [Button1] をダブルクリックすると、ソースコードが表示されるので、次のコードを追加して下さい。
    最初の Page_Load で、パラメータ(Query)で渡されたユーザーIDを取得して TextBox に表示します。
    Query で渡されたパラメータは、新たなポストバックが起こると取得出来なくなります。
    ボタンをクリックすると元のページに戻ります。
    redirect.aspx が元のページの名前です。
        // ページのコードをここに記述してください。
        void Page_Load(object sender, EventArgs e)
        {
            if(!IsPostBack)
            {
                TextBox1.Text = Request.QueryString["User"];
            }
        }
        
        void Button1_Click(object sender, EventArgs e)
        {
            Response.Redirect("redirect.aspx");
        }
        
  4. 下のタブを「すべて」に切り替えて、ソースコードに名前(redirect2.aspx)を付けて保存して下さい。
  5. redirect.aspx と redirect2.aspx を ASP.NET サーバーにアップロードして下さい。
  6. redirect.aspx を呼び出して、ユーザーIDをタイプします。
    ボタンをクリックすると redirect2.aspx が呼び出されます。
  7. redirect2.aspx でボタンをクリックすると、元の redirect.aspx に戻ります。

【NOTE】

Web Game Program では、ステージが変わると別のページにリンクすることが良くあります。
複数のページを相互にリンクしながらゲームのステージを進めて行くのです。
あるページから別のページへ移動することをページ間の遷移(せんい)と言います。
次のページ(ステージ)に移動するときに、ステージを引き継ぐパラメータが必要になることがあります。
Redirect で移動するときは、パラメータを Query として渡して下さい。
ただし Query として渡した場合は、URL と一緒にネット上を流れるので、秘匿性に劣ります。
受け渡す情報が多く(大きく)なるときは、サーバー上にファイルを用意して格納します。
Web Program では複数のクライアントが同時にログインすることを考慮しなければなりません。
ファイルを使うときは、クライアントの情報が混乱しないように管理することが必要です。
大規模なネットワクゲームでは、同時に数千,数万のクライアントがログインすることもあり、データベースを用います。

redirect.aspx のソースコード

redirect2.aspx のソースコード

redirect.aspx を呼び出す

超初心者のプログラム入門(C# on-line game)