Thoughts on radtabstrip performance hack

3 posts, 0 answers
  1. Guido Tapia
    Guido Tapia avatar
    87 posts
    Member since:
    Jul 2012

    Posted 11 Jul 2008 Link to this post

    Hi Guys,

    I'm having some performance issues with a very complex page.  It has about 20 tabs and each page view is very complex.  Now I have been using the AutoPostBack/RenderSelectedPageViewOnly settings for a while but I still have some servious performance issues just because of a lot of uneccessary database calls and dynamic control creations in Init and Load. 

    So I was thinking: Why not use the query string to determine the current selected tab? And then override the PageView component and not InitRecursive when its index is not the one currently being shown.

    This has several advantages.
    - Client side redirect to the next tab (instead of having a redundant post back when simply changing tabs)
    - No controls get added to the control tree when they are not in the visible tab (Perforrmance!!)
    - No large rewrite required to separate each page view into its own page

    Several Drawbacks
    - Its a kind of dirty hack
    - Will make it harder to change to client side tab navigation in the future
    - No ajax navigation between tabs as each tab navigation is a whole new page request

    So.  Do you telerik guys think this is a good idea? Possible?  How do you think I should approach this? Override InitRecursive in a custom PageView control?

    Thanks

    Guido Tapia
  2. Atanas Korchev
    Admin
    Atanas Korchev avatar
    8462 posts

    Posted 11 Jul 2008 Link to this post

    Hi Guido Tapia,

    As far as I know overriding InitRecursive is not possible as it is internal method. Also aborting the server-side control lifecycle does not sound like a good idea because it would lead to unpredictable behavior.

    Perhaps you could approach the problem in a different way - you can split your pageview contents in user controls (if not already) and load only one user control at a time based on the current tab. In this case you won't need  pageviews and a multipage at all.

    Regards,
    Albert
    the Telerik team

    Instantly find answers to your questions at the new Telerik Support Center
  3. Guido Tapia
    Guido Tapia avatar
    87 posts
    Member since:
    Jul 2012

    Posted 13 Jul 2008 Link to this post

    Hi Albert,

    Well you were right, messing with life cyle was not the best idea. I ended up having to client redirect on each tab navigation and create the neccessary 'page view' depending on a query string parameter.  I keep on forgetting how rigid the asp.net model can be when doing out of the ordinary things.

    Thanks

    Guido
Back to Top