This question is locked. New answers and comments are not allowed.
All,
I have done a fair amount of searching. Most of the examples I stumble upon recommend using DomainDataSource for server-side filtering and sorting. All of these appear to be database-based. I am looking for some WCF services examples (one would think one would find these since it is "WCF RIA Services".)
My application is three-tiered.
Tier 1 - the master controller, may be remote, has control of the database, exposes things like "GetAllEvents(...)" as a WCF service
Tier 2 - the UI service, to which the Silverlight 3 client is bound. This is a proxy, if you will.
Tier 3 - the UI Silverlight 3 client.
A typical request for "GetAllEvents()" involves a GridView bound to an ObservableCollection<Event>. On a request for update, the UI Client (T3) asks the UI Service (T2), which then asks the appropriate master controller(s) (T1) (which ultimately consult their database(s)). When the asynchronous callback completes, the UI Client (T3) updates the ObservableCollection<Event> and the RadGridView dutifully updates the display.
This of course relies on the entire collection being loaded for sorting, filtering and paging to work properly (using the DataPager) control. As time goes on the number of events gets larger and larger and retrieving them all in order to show a few (paging) or search/sort/filter them is getting prohibitively slow.
I am investigating using server-side sorting and filtering, but I am coming up empty on the WCF side. Can anyone suggest an example or provide other feedback on doing anything similar? I'm thinking I will want to default to something like the last 100 events or all events for the last 30 days or something like that, with control(s) to extend or page the data in the RadGridView.
Thank you,
Tim
I have done a fair amount of searching. Most of the examples I stumble upon recommend using DomainDataSource for server-side filtering and sorting. All of these appear to be database-based. I am looking for some WCF services examples (one would think one would find these since it is "WCF RIA Services".)
My application is three-tiered.
Tier 1 - the master controller, may be remote, has control of the database, exposes things like "GetAllEvents(...)" as a WCF service
Tier 2 - the UI service, to which the Silverlight 3 client is bound. This is a proxy, if you will.
Tier 3 - the UI Silverlight 3 client.
A typical request for "GetAllEvents()" involves a GridView bound to an ObservableCollection<Event>. On a request for update, the UI Client (T3) asks the UI Service (T2), which then asks the appropriate master controller(s) (T1) (which ultimately consult their database(s)). When the asynchronous callback completes, the UI Client (T3) updates the ObservableCollection<Event> and the RadGridView dutifully updates the display.
This of course relies on the entire collection being loaded for sorting, filtering and paging to work properly (using the DataPager) control. As time goes on the number of events gets larger and larger and retrieving them all in order to show a few (paging) or search/sort/filter them is getting prohibitively slow.
I am investigating using server-side sorting and filtering, but I am coming up empty on the WCF side. Can anyone suggest an example or provide other feedback on doing anything similar? I'm thinking I will want to default to something like the last 100 events or all events for the last 30 days or something like that, with control(s) to extend or page the data in the RadGridView.
Thank you,
Tim
