2

MSDN のドキュメントによると、ScriptManager.GetStateString() 「Web ページの状態を表すキーと値のペアを含む文字列を取得します。」

メソッドを呼び出すと、ハッシュされた文字列のように見えるものが返されます。これを解析して有用なものにするにはどうすればよいですか? GetStateStringメソッドによって正確に返されるものは何ですか?

編集:GetStateStringページでフォームを送信したり、クエリ文字列にデータを追加したりしても、返される値が変わらないこと に気付きました。「ページ状態」には、この種の状態データが含まれていないようですか?

更新:ハッシュ値を設定ScriptManager.EnableSecureHistoryState = falseすると、空の文字列に置き換えられます。どうやら EnableSecureHistoryState = true の場合、GetStateString によって返される値は暗号化され、ハッシュされます。

4

1 に答える 1

1

GetStateString()履歴ハッシュから状態を返します。

履歴ハッシュは、Ajax アプリケーションでブラウザーの戻る/進むボタンを有効にするための答えです。エントリを記録するので、前後に移動できます。

履歴ハッシュにデータを追加するためのAddHistoryPointメソッドを確認し、使用例についてはこのブログ投稿を確認してください。

ハッシュされた応答を取得する理由ScriptManager.EnableSecureHistoryState = trueは、履歴状態のハッシュ テーブルが空であり、NULL ではないためです。これは、シリアライズと暗号化が可能なオブジェクトです。

状態ハッシュが NULL または空の場合、空の文字列が返されます。これはあなたの場合だと思います。履歴ポイントを追加していません。

于 2010-02-23T07:58:57.327 に答える