2

データ入力フォームを動的に表示する単純なフォームがあり、ユーザーがポストバックを実行すると、結果がデータベースに保存されます。フォームの新しいバージョンを作成しました。データベースの情報に基づいて、ユーザーが古いフォームのURLを要求したときに、Server.Transferを新しい*.aspxページに転送してページを生成します。ポストバックを処理します。ページのURLは変更されないので、それはポストバックが元のページに送信されることを意味しますか?次に、それがポストバックであるかどうかを確認する必要がありますか?そうであれば、Server.Transferを呼び出して、フォームデータを新しいページに転送できるようにしますか?

4

2 に答える 2

5

ポストバックを「取得」することの意味によって異なります。最初のページは、クライアントから送信されるため、もちろん投稿されたフォーム値を取得します。ただし、最初のページがポストバック情報に反応してどこまで到達するかは、ライフサイクルのどの時点で Server.Transfer を開始するかによって異なります。ライフサイクルの非常に遅い場合 (クリック ハンドラーなど)、最初のページはポストバック プロセス全体をほぼ完了しています。

Server.Transfer でフォームの値を保持するためのオプションのパラメーターは、2 番目のページもポストバックであるかのように要求に反応するかどうかを指定します。

于 2010-02-10T14:36:47.130 に答える
1

Server.Transfer の後のページの HTML ソースを見てください。フォームのアクションが新しい ASPX であれば問題ありません。

通常のリダイレクトを使用する方がおそらく簡単でしょう。そうすれば、この種の問題は発生しません。

于 2010-02-10T14:40:05.717 に答える