部分的なビューを介してページを更新するタイミングと、Knockout などの JSON および JS ライブラリを使用する「のみ」のタイミングの行 (またはパターン) を見つけようとしています。
たとえば、アイテムのソートされたリストと、このリストにいくつかの異なるビュー (パースペクティブ) (たとえば、サムネイル付きのもの、ベル付きのもの、ホイッスル付きのもの) があり、ユーザーはこれらのビューを切り替えることができます。
1 つのオプションは、すべてのビューを部分ビューでレンダリングすることです。したがって、ユーザーがビュー (パースペクティブ) を選択すると、対応する部分ビューが ajax (コントローラー -> 部分ビュー) を介してダウンロードされます。
反対のオプションは、最初にリストをJSONとして取得し、たとえばKnockoutを使用してビューをレンダリングすることです-しかし、これはMVCに反すると思います-コントローラーのアクションはビュー(または部分ビュー)を生成しませんが、この場合は生成しますJSON リスト。多くの場合、いつ部分ビューを使用するか、JSON だけを使用するかは明らかです。私のルールでは、通常、ビュー (HTML マークアップ) はビューであり、JSON を使用して HTML マークアップのみを変更します。
どこに線を引くべきかわかりません.JSON / Knockoutをより広範囲に使用すると、より責任のあるWebアプリケーションが得られ、トラフィックが少なくなります(クライアントはデータを一度だけダウンロードし、実際のビューはクライアント側でレンダリング/更新されます).それが「正しい」かどうかはわかりません。
では、部分ビューを使用してページを更新するのはいつで、JSON/JS を使用するのはいつですか?
編集:
つまり、ASP.NET MVC + Razor のシナリオでは、サーバーのワークロードをブラウザにオフロードする以外に、クライアント側のテンプレートを使用する利点はありますか?