1

いくつかの独立した部分ビューをロードするダッシュボード ビューがあります。各部分ビューの読み込みには約 4 分の 1 秒かかります (そして、おそらく最適化できます) が、これらの部分ビューの読み込みをマルチスレッド化して読み込みをさらに高速化する方法を見つけたいと考えています。

現時点では、画面をすばやくレンダリングするために、<div id="myWidget">各部分ビュー/ウィジェットのセクションを含む必要最小限のビューをロードすることから始めます。このセクションでは、「データの読み込み中...」と入力します。次に、各部分ビューの JavaScript で関連データをロードするために別の jQuery 呼び出しを行います。myWidgetそれが戻ってきたら、元のスパンを部分ビューに置き換えます。

これらすべてのウィジェットが並行して動作することを望みます。どのようにしますか?

4

2 に答える 2

0

単一の ajax 呼び出しを行ってから、すべてのウィジェットのデータを準備することができます。アクションメソッドで非同期呼び出しを行い、データを並行して準備します。http://www.asp.net/mvc/tutorials/mvc-4/using-asynchronous-methods-in-aspnet-mvc-4#SampleAppを参照してください。

次に、すべてのデータをビューにモデルとして渡し、異なる部分ビューを使用して各ウィジェットをレンダリングし、マッシュアップ ビューを応答として返します。

クライアント側では、ajax 呼び出しが成功したら、ダッシュボード/ウィジェット領域全体を、応答として受け取ったデータに置き換えます。

于 2013-05-08T15:14:07.967 に答える