I am developing an application using SL 4, VS 2010, Also I am using Telerik Controls in my application.
Architecture of my application is as follows:
One Solution containing Service that will interact with Database.
Another Solution contains Presentation layer which we call it as Client.
In Client's ServiceReferences.ClientConfig file we give the endpoint address of Service so that Client can display the records that are retreived from database using Service.
Now, If the Service is returning less number of records say 100 with 10 columns, the page is loading in 2 to 3 seconds. But as the number of records are increasing the page is loading slowly.
One example: 6000 records with 10 columns -> 45 seconds.
In Service we are returning in the form of List.
I have run the query separetely it is getting executed in less than 2 seconds.
If the Service and Client are hosted ins ame machine then the performance is good (Records are displayed in less than 5 seconds) But if I access the Service over the network then it is taking large amount of time as mentioned in the above example.
Please let me know if I am following correct architecture.
This problem is not with Telerik controls but please help me with any suggestions regarding Service Client communication.
Thanks in advance
Kalyan Gupta B
7 Answers, 1 is accepted
why not using a datapager? This way only a small chunk of data will be transferred from the server to the client.
You can check the DomainDataSource example of RadGridView for Silverlight.
It uses RadDataPager and you can see that only 10 records are loaded each time.
Hope this helps.
I am already using RadDataPager, I have observed that for the first time it fetches all the 6000 records but displays only 10 records.
When we click on next then it displays fastly.
But to display thge first 10 records it takes similar time 45 seconds for the first time.
If you check the online demo and open FireBug or Fiddler you will see that the first request is
which takes only the first 10 items. Please recheck your configuration.
Could you please give the link again.
RadGridView will only download the shown data if you are using Ria Services. In case you are using a custom web service you will have to write some custom code to make it work as demonstrated in this blog post.
the Telerik team
I have been using Normal WCF service so far.
Now I am using Silverlight Enabled WCF service and seen significant improvement in performance.
But now also 6000 records with 10 columns is taking aproximately 25 seconds.
Please suggest me a better architecture to gain over performance.
Thanks in advance.
Here is sample project that uses RadGridView + RadDataPager + Ria Services where the data gets loaded in a blink of an eye.
the Telerik team