1

お客様には次の要件があります。

  • ユーザーがフォームの検索アイコンをクリックすると、検索ページがモーダル ダイアログ (iframe) に表示される必要があります。
  • ユーザーは、検索、検索結果の参照、およびレコードの選択を行うことができます
  • モーダル ダイアログが非表示になり、ユーザーがレコードを表示するようになりました
  • ユーザーが検索アイコンをもう一度クリックすると、モーダル ダイアログが再び表示されます。

今私の質問の部分:

  • ユーザーが現在のページを離れ、数分後にそのページに戻り、検索アイコンをもう一度押して検索を続けると、前に離れた場所と同じページが表示されます。

完全なページを保存して、ユーザーが検索ページを再度表示したいときに復元することを好みます。しかし、それが可能かどうかはわかりません..

すべての検索フィルターを保存したくなく、ユーザーが検索ページに移動したときに再度検索を実行します。これは、100 を超える検索フィルターがあり、検索にも時間がかかる可能性があるためです。

検索を続行できること、および検索ページに再度アクセスするたびに最初からやり直してはならないことは、顧客からの厳しい要件です。

これに関するすべての提案に感謝します。

4

3 に答える 3

2

VaryByParam 属性が設定された .NET の @OutputCache ページ宣言を使用できるように思えます (少なくとも、検索パラメーターがクエリ文字列を介して渡される場合)。

于 2012-05-15T12:31:40.937 に答える
0

検索結果をサーバーに保存するための、ある種のカスタム キャッシュ メカニズムを考え出しました。ユーザーが検索を送信すると、結果がキャッシュに保存され、キーがページに返されます。次に、ユーザーがボタンをクリックして結果を再表示すると、キーを使用してサーバーから結果を取得します。

于 2012-05-15T16:54:54.517 に答える
0

検索結果をセッションまたはビューステート変数に保存してみませんか?

私があなたの立場にあった場合 (そして検索結果をセッション変数に保存できなかった場合)、私は次のようにします。

  1. モーダル ダイアログを独自のページにします。
  2. サーバーにページをダウンロードします (サーバーはモーダル ダイアログ ページに接続し、コンテンツをダウンロードします)。
  3. ダウンロードしたページをどこかに保存します (おそらくセッションですが、データベースまたはファイル システムの場合もあります)。
  4. モーダル ダイアログにiFrameを追加します (必ず名前フィールドを追加してください。そうしないと、FF では機能しません)。
  5. モーダル ダイアログの iFrame のソースを、保存された検索結果に設定します。

検索結果がサーバー側のブラウザー依存コントロール (サーバーで示されたブラウザーの種類に基づいて異なる HTML を返すコントロール) を使用する場合、このソリューションには問題があることに注意してください。

必要に応じて、保存したページの body タグの内部 html に div の内部 html を設定すると、iFrame を div に置き換えることができます。

ASP には、レンダリングされたページのテキストを取得する機能も組み込まれていると思いますが、それが何と呼ばれていたかは覚えていません。

于 2012-05-15T17:22:43.693 に答える