I am currently profiling our ASP.NET web application which is built on Telerik ASP.NET AJAX controls, an Oracle 10g database, and MS LDAP server (ADAM).
I was shocked by the results of my first run with the profiler. Even though this is a small web form that makes several calls to Oracle and to LDAP in the code behind.., the Telerik.Web.UI.RadAjaxControl represents 77+% of our page processing time! In other words the Telerik controls take longer to render HTML than our backend takes to run several SQL & LDAP queries to geographically remote servers.
Looking more deeply revealed that the DecribeComponent() method invokes the reflective method 'GetCustomAttribute' almost 500 times per page request!
Profiler Results
I am trying to understand why an ajax framework would need to make heayweight reflective calls like this, is there anyway to disable this use of relection without porting to a different set of controls?
I was shocked by the results of my first run with the profiler. Even though this is a small web form that makes several calls to Oracle and to LDAP in the code behind.., the Telerik.Web.UI.RadAjaxControl represents 77+% of our page processing time! In other words the Telerik controls take longer to render HTML than our backend takes to run several SQL & LDAP queries to geographically remote servers.
Looking more deeply revealed that the DecribeComponent() method invokes the reflective method 'GetCustomAttribute' almost 500 times per page request!
Profiler Results
I am trying to understand why an ajax framework would need to make heayweight reflective calls like this, is there anyway to disable this use of relection without porting to a different set of controls?