私はasp .netマスターページアプリケーションを持っていて、1つのコンテンツページには多数のコントロールがあります。セッション状態を取得する方法
ユーザーが別のコンテンツページに移動するたびに、これらのコントロールのコンテンツ/状態をセッション状態に保存します。
私の質問は、どのようにコントロール状態をキャプチャするのですか?プロシージャをトリガするために使用できるイベントがありますか?
事前情報ありがとうございます。
私はasp .netマスターページアプリケーションを持っていて、1つのコンテンツページには多数のコントロールがあります。セッション状態を取得する方法
ユーザーが別のコンテンツページに移動するたびに、これらのコントロールのコンテンツ/状態をセッション状態に保存します。
私の質問は、どのようにコントロール状態をキャプチャするのですか?プロシージャをトリガするために使用できるイベントがありますか?
事前情報ありがとうございます。
ビルは、おそらく彼らはあなたがそれらを提供しているコントロール(ボタン、リンクなど)あなたはトラップその時点でサーバ側のアクションをすることができますし、自分の状態をキャッシュを経由して離れて、そのページからナビゲートしています。
ユーザーが別のページに行くとき(またはブラウザの戻るボタンを押すだけでも)を検出するために使用できる実際の「グローバル」サーバーサイドイベントハンドラはありません。
マスタページにセッション状態を保存し、指定した場所にResponse.Redirect()メソッドを実行するメソッドを記述するのが最善の方法です。次に、セッション状態を追跡する必要があるときに、すべてのリンクをこのメソッドに渡します。
セッション変数の使用はどうですか?
は、詳細はこちらのリンクを参照してください。 ASP.Net Session
状態を維持するために、いくつかの方法があります。あなたが使用しているバージョンに関係なくトレードオフがあります。たとえば、複数のサーバー間で負荷分散されているアプリケーションでは、セッション変数を使用しません。要求ごとに同じサーバーを取得する保証はなく、状態はサーバーごとに格納されます。
これは、しかし、簡単にするために、この
Session["myState"] = 7; // bad example
を打ち負かすのは難しいです。 :)