This is a migrated thread and some comments may be shown as answers.

RadScheduler Performance Improvement

4 Answers 148 Views
Scheduler
This is a migrated thread and some comments may be shown as answers.
Sergio
Top achievements
Rank 1
Sergio asked on 24 Nov 2010, 06:04 PM

Greetings

I am to implement ways for improving the performance of my RadScheduler.I cannot bind the control in the client given that one of the requirements of my application is to create a datatable or a dataset dynamically based on the return values.

My RadScheduler binds perfectly, however, performance wise, the scheduler is taking to long to generate the view upon view change. I had an opportunity to read the optimized query example, and I like it a lot. I was thinking to implement something alike by doing a LINQ to Datatable and then binding the RadScheduler control. In this instance, I believe the Datasource_Selecting Event wont be the best choice.

Is it there an available event - say - RadScheduler_BeforeRangeChange or ViewRangeChange - so I could go ahead and bind the control per view instance? 

Say in that event

IEnumerable<DataRow> query =
    from rows in MyDataTable.AsEnumerable()
    where rows.Field<DateTime>("START") > RadScheduler1.VisibleRangeStart AND
    rows.Field<DateTime>("END") < RadScheduler1.VisibleRangeEnd
    select rows;
  
DataTable boundTable = query.CopyToDataTable<DataRow>();
  
RadScheduler1.DataSource = boundTable;


If there not an availabel event ,is there a work around? Also, after the RadScheduler taking too long is returning me the view, but right after error - System.webforms.pagerequestManagerServerError Exception - ViewState Mac Failed

How could I be about fixing these performance issues?

Please let me know,
Thanks


4 Answers, 1 is accepted

Sort by
0
Peter
Telerik team
answered on 29 Nov 2010, 01:59 PM
Hi Sergio,

You can use NavigationComplete:
protected void RadScheduler1_NavigationComplete(object sender, SchedulerNavigationCompleteEventArgs e)
   {
       //RadScheduler1.VisibleRangeStart
       //RadScheduler1.VisibleRangeEnd
   }

Also, I suggest you review the general top performance tips:http://www.telerik.com/products/aspnet-ajax/resources/top-performance.aspx


Best wishes,
Peter
the Telerik team
Browse the vast support resources we have to jumpstart your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Sergio
Top achievements
Rank 1
answered on 30 Nov 2010, 06:14 AM
Hello

Thank you for the post

I believe to be very close, I used the navigation Command Event but if i dont force an update in my update panel, the Radscheduler wont bind, and this strategy is still taking quite a bit

protected void RadScheduler1_NavigationCommand(object sender, SchedulerNavigationCommandEventArgs e)
       {
           RadScheduler1.DataSource = GetViewInstanceDataTable(FriendsLoadedData);
           RadScheduler1.Rebind();
           RadAjaxManager1.ResponseScripts.Add(String.Format("$find('{0}').ajaxRequest();", RadAjaxManager1.ClientID));
             
       }

Also, I am using a radtooltip to display scheduler information, I have been able to do this in the past. However now I am faced with an error - Server Requested timeout and the information in the tooltip is nefver display - Could this be consider the same performance issue?

By the way, this is also my first time implementing the Rad Scheduler with tooltip in 4.0, I have always done it in 3.5, with no problem. is there anything i must have in consideration?
0
Peter
Telerik team
answered on 03 Dec 2010, 03:29 PM
Hi Sergio,

What are your RadAjaxManager settings? Have you configured it so that RadScheduler updates itself?

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
       <AjaxSettings>
           <telerik:AjaxSetting AjaxControlID="RadScheduler1">
               <UpdatedControls>
                   <telerik:AjaxUpdatedControl ControlID="RadScheduler1"></telerik:AjaxUpdatedControl>
               </UpdatedControls>
           </telerik:AjaxSetting>
       </AjaxSettings>
   </telerik:RadAjaxManager>

As for the RadToolTip issue, can you open a support ticket and send us a working demo for testing?


Regards,
Peter
the Telerik team
Browse the vast support resources we have to jumpstart your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Sergio
Top achievements
Rank 1
answered on 03 Dec 2010, 07:10 PM
Hi

Yeah, that is how i have set my RadAjaxManager, I open a support ticket.
Thanks for your help

Sergio
Tags
Scheduler
Asked by
Sergio
Top achievements
Rank 1
Answers by
Peter
Telerik team
Sergio
Top achievements
Rank 1
Share this question
or