2016-04-19 11 views
1

ShieldUIグリッドにデータをバインドするときに、pageSizeとpageNumberに基づいてデータをロードする必要があります。たとえばpagesizeが10で、ユーザーがグリッドの2ページ目のときに11-20からレコードをフェッチします。 startindexとpagecountを私のコントローラアクションに渡すことができないようなストアドプロシージャを記述しています。現在、initalliyは、そのパフォーマンスが非常に遅いので、initalliyデータベースからすべてのレコードをフェッチします。pagesizeとpagecountに基づいてShieldUIグリッドにデータをバインドしますか?

答えて

1

次の例を見て持つことができます。

http://demos.shieldui.com/web/grid-databinding/remote-data

あなたがリモート - を使用する必要があります>データソースのオプションをお読みください。 urlには、あなたのcontrollerName/action URLを入れてください。次に、データメソッドで、アクションパラメータとグリッドパラメータの間のマッピングを行います。 odataParams辞書では、urlパラメータを設定します。 $ skipは省略されるレコードの数であり、$ takeはコントローラのアクションによってデータベースからフェッチされるレコードの数です。

+0

私は以下の方法でリモートを使用しました。 リモート:{ 操作:[ "取る"、 "スキップ"]、 読む:{ タイプ: "GET"、 URL: "のhttp:// localhostを:52816 /グリッド/ getGirdData"、 データ型:「JSON 」、 スキップ:5、 テイク:10 }、 }、 また、あなたが同じことを説明例も提供する場合、私はodataParams辞書object.Itのより良いにパラメータを設定することができますか。 – Pankaj

+0

私はアクションパラメータとグリッドパラメータの間のマッピングに成功しました。現在の問題は、データベースに30000レコードがあり、スキップしてパラメータを取るためにグリッドが読み込まれたときに、データベースのレコード数に応じてページングを表示します。ページングを設定するにはどうすればいいのか教えてください。 – Pankaj

+0

グリッドがレコードの合計数を知るように、合計(schema.total)を設定する必要があります。ここの例:http://demos.shieldui.com/web/grid-databinding/remote-data –

関連する問題