This question is locked. New answers and comments are not allowed.
Dear Telerik Team,
How to use VirtualQueryableCollectionView with paging.. for large amount of data we r using domaindatasource. can i use VirtualQueryableCollectionView for the the alternate for DomainDataSource. please post example code
How to use VirtualQueryableCollectionView with paging.. for large amount of data we r using domaindatasource. can i use VirtualQueryableCollectionView for the the alternate for DomainDataSource. please post example code
5 Answers, 1 is accepted
0
Hello,
Vlad
the Telerik team
Have you checked our demo? The grid is bound to VirtualQueryableCollectionView and data are loaded on demand from WCF RIA Service. You can download our QSF and check ExamplesDataContext in DataVirtualization project. I'm post the code here as well:
public class ExamplesDataContext : ViewModelBase { NorthwindDomainContext _Context; public NorthwindDomainContext Context { get { if (_Context == null) { _Context = new NorthwindDomainContext(); } return _Context; } } VirtualQueryableCollectionView _Customers; public VirtualQueryableCollectionView Customers { get { if (_Customers == null) { _Customers = new VirtualQueryableCollectionView(); _Customers.VirtualItemCount = 100; // Force ItemsLoading to get the real total item count and data in a single request _Customers.LoadSize = 10; _Customers.ItemsLoading += Customers_ItemsLoading; } return _Customers; } private set { if (this._Customers != value) { _Customers.ItemsLoading -= Customers_ItemsLoading; this._Customers = value; this.OnPropertyChanged("Customers"); } } } void Customers_ItemsLoading(object sender, VirtualQueryableCollectionViewItemsLoadingEventArgs e) { EntityQuery<Customer> query = Context.GetCustomersQuery(); query.IncludeTotalCount = true; Context.Load<Customer>(EntityQueryExtensions.Sort<Customer>(query, Customers.SortDescriptors).Skip(e.StartIndex).Take(e.ItemCount), LoadBehavior.RefreshCurrent, CustomersLoaded, e.StartIndex); } private void CustomersLoaded(LoadOperation lo) { if (lo.TotalEntityCount != Customers.VirtualItemCount) { Customers.VirtualItemCount = lo.TotalEntityCount; } Customers.Load((int)lo.UserState, lo.Entities); } public void ClearLoadedCustomers() { this.Customers = null; } }
Vlad
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Sriram
Top achievements
Rank 2
answered on 20 Oct 2010, 11:48 AM
Dear Telerik Team,
it is working great.
can i use
it is working great.
can i use
VirtualQueryableCollectionView as an alternate of domaindatasource??
0
Hello,
Vlad
the Telerik team
Indeed you can use the collection to load data on demand similar to DomainDataSource
and I'm happy to inform you that we will release our own DomainDataSource with the first service pack of our Q3 - most probably early December this year.
Vlad
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0
Hicham
Top achievements
Rank 1
answered on 20 Oct 2010, 08:34 PM
I have not used your class yet but I would like to understand the logic.
Does it just encapsulate the order().skip().take() logic on the client side or does it offer some caching on the server side?
Thank you.
Does it just encapsulate the order().skip().take() logic on the client side or does it offer some caching on the server side?
Thank you.
0
Hello,
Vlad
the Telerik team
VirtualQueryableCollectionView will cache item on the client once the item is loaded.
Regards,Vlad
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
