0

私は KendoGrid を持っています。イベントを読み取ってデータソースを設定します。

public virtual JsonResult ContactsListRead([DataSourceRequest] DataSourceRequest request)
{
   return Json(ContactsModel.ContactsService.Get().ToDataSourceResult(request));
}

ContactsModel.ContactsService.Get() メソッドは、IQueryable を返します。

 var qContactsOpen = from x in promo.Contacts
                                            where x.type == type && (x.closure_id == 0 || x.closure_id == null)
                                            orderby x.id descending
                                            select new ContactsGrid
                                            {
                                                Id = x.id,
                                                DescriptionA = x.description_A,
                                                Address = x.address,
                                                PhoneA = x.phone_A,
                                                CategoryDescription = x.Categories.description,
                                                Location = x.location,
                                                Subject = x.subject,
                                                Note = x.ContactsActivities.Where(o=>o.promotion_id == promo.id).OrderByDescending(o => o.date).Select(o => o.note).FirstOrDefault() ?? "",
                                            };

                        return (qContactsOpen.AsQueryable());

グリッドには Paging(20) があるので、クエリのレコード数が何であっても、ContactsListRead には少し時間がかかると予想されますが、大量のレコードの場合は時間がかかります...

私は何かを忘れましたか?

4

3 に答える 3

0

必ずDataSource に設定serverPagingしてください。true

于 2013-10-09T17:15:06.143 に答える
0

おそらく、DataSourceRequest は空です。ページに kendo.aspnetmvc.min.js が含まれていることを確認してください。

于 2013-10-10T06:44:03.337 に答える