0

データベースにあるすべてのレコードを取得して、Excel ファイルにダウンロードしようとしています。3000 を超えるレコードがありますが、Kendo Grid からデータを取得すると (JSON 形式にすることに成功しています)、現在ページに表示されている 25 のレコードのみが表示されます。

Server Paging を true に設定しています。前述のように、私のページ サイズは 25 です。送信している JSON に 3000 以上のレコードをすべて入れるためにできるトリックはありますか、それとも 25 を取得するだけで行き詰っていますか?ページに現在表示されていますか?

4

1 に答える 1

1

設計上、Excel ファイルにエクスポートするデータを取得するには、別の呼び出しを行う必要があります。これにより、ページの軽量化が維持されます。

ただし、3000 レコードすべてを毎回ロードしたい場合は、サーバーのページングを無効にしてクライアント側のページングを有効にすることができます。これにより、UI で 25 レコードを表示できますが、応答には 3000 レコードがあります。

ここでも、グリッドを共有できるように、DataSource をグリッドから分離する必要があります。


あなたの最後のコメントに基づいて:

MVC (ASP.NET) を使用している場合は、FilterContainer オブジェクトをパラメーターとしてコンテナーに渡して、データベースからデータをフィルター処理するためのすべての条件を取得できます。

public class FilterContainer
{
    public List<FilterDescription> Filters { get; set; }
    public string Logic { get; set; }
}

public class FilterDescription
{
    public string Operator { get; set; }
    public string Field { get; set; }
    public string Value { get; set; }

    public List<FilterDescription> Filters { get; set; }
    public string Logic { get; set; }
}

JavaScript でこの構造を構築して、JS から条件をプッシュしてデータをフィルタリングします。

于 2013-09-12T17:53:38.483 に答える