表示用のデータを取得するためにサービス (データベースではない) を呼び出すアクションがあり、これらのデータに対してページングを実行したいのですが、2 番目のページがクリックされるたびに、このアクションが呼び出され、もちろん実際、最初のページのリンクをクリックすると、2番目のページに必要なものを含むデータ全体がすでに生成されています。一度サービスを呼び出してすべてのデータを取得したいだけで、後でページングするときに、サービスを再度呼び出す必要はありません。どうすれば対処できますか?
質問する
210 次
1 に答える
0
これに対処するにはいくつかの方法があります。実用的でデータ量が限られている場合は、最初のリクエストでデータ セット全体を返しても問題ありません。その場合は、ページを最初に読み込むときに純粋な JSON オブジェクトを返すことを検討します。次に、これをページング操作を実行できる Web ページの JS オブジェクト変数に逆シリアル化できます。これは、すべてのデータがクライアント側に存在するクライアント側ページングの例です。
もう 1 つの方法は、必要に応じて次のページのデータを要求する Ajax ベースのページングを行うことです。このシナリオでも JSON を返すことをお勧めします。
2 つのアプローチの違いは、最初のアプローチではすべてのデータが事前に返されるのに対して、2 つ目のアプローチでは特定のページをレンダリングするために必要なものだけが返されるという点です。
于 2013-07-25T03:23:34.053 に答える