Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > Best practices around "Page_PreRender" and "Page_Load" events

Reply
Thread Tools

Best practices around "Page_PreRender" and "Page_Load" events

 
 
Max2006
Guest
Posts: n/a
 
      07-23-2007
Hi,

Are there any best practices or recommendations around using
"Page_PreRender" vs "Page_Load"? We are thinking to completely switch to
Page_PreRender event to handle page's controls initialization requirements.

I went through some asp.net page life cycle documentations (and diagrams)
and it seems that we can safely move all Page_Load codes to Page_PreRender.
Is there any work that we can only do in Page_Load and cannot do it in
Page_PreRender?

A link to an online article would greatly help.

Thank you,
Max


 
Reply With Quote
 
 
 
 
bruce barker
Guest
Posts: n/a
 
      07-23-2007
only if the logic belongs there. the simplified cycle is:

oninit - use to init controls before postback data loaded

onload - after postback data applied to controls

onclick/etc - server events fired

prerender - after server events

render - produce html

general control init should be done in oninit. onload is used if
controls use viewstate (bad practice - should only be done with
intranets) or for postback data handling.


-- bruce (sqlwork.com)


Max2006 wrote:
> Hi,
>
> Are there any best practices or recommendations around using
> "Page_PreRender" vs "Page_Load"? We are thinking to completely switch to
> Page_PreRender event to handle page's controls initialization requirements.
>
> I went through some asp.net page life cycle documentations (and diagrams)
> and it seems that we can safely move all Page_Load codes to Page_PreRender.
> Is there any work that we can only do in Page_Load and cannot do it in
> Page_PreRender?
>
> A link to an online article would greatly help.
>
> Thank you,
> Max
>
>

 
Reply With Quote
 
 
 
 
Walter Wang [MSFT]
Guest
Posts: n/a
 
      07-24-2007
Hi Max,

Besides Bruce's input, here's my thoughts on this:

* Initialization code that runs in first page load (non-postback) is
normally in Page_Load (http://support.microsoft.com/kb/317794)

* Normally you need to register client script in PreRender (<<Developing
Microsoft ASP.NET Server Controls and Components>>, chapter "Client Script
- Related API"; and this also applies when you're using AJAX:
http://weblogs.asp.net/leftslipper/a...00_-Write-cont
rols-compatible-with-UpdatePanel-without-linking-to-the-ASP.NET-AJAX-DLL.asp
x)


Hope this helps.


Regards,
Walter Wang ((E-Mail Removed), remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

 
Reply With Quote
 
Walter Wang [MSFT]
Guest
Posts: n/a
 
      07-27-2007
Hi Max,

I'm writing to check the status of this post. Please reply to let us know.
Thanks.


Regards,
Walter Wang ((E-Mail Removed), remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

 
Reply With Quote
 
Max2006
Guest
Posts: n/a
 
      07-30-2007
Hi Walter,

Your response helped me; however I was looking for an actual best practices
guidelines. From you post I have a feeling that there is no official
guideline?

Thank you,
Max



"Walter Wang [MSFT]" <(E-Mail Removed)> wrote in message
news:qRWgrm$(E-Mail Removed)...
> Hi Max,
>
> I'm writing to check the status of this post. Please reply to let us know.
> Thanks.
>
>
> Regards,
> Walter Wang ((E-Mail Removed), remove 'online.')
> Microsoft Online Community Support
>
> ==================================================
> When responding to posts, please "Reply to Group" via your newsreader so
> that others may learn and benefit from your issue.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>



 
Reply With Quote
 
ThunderMusic
Guest
Posts: n/a
 
      07-30-2007
Hi
What we usually do here is the following :

/*************/
In Page_Load : We put the initialization for the objects (like the object
holding the logged user's infos) the postback events and pre render will
need. No display related stuff here because it may be changed by the server
events. Actually, we could move almost all the code from here to OnInit, but
we are doing it in Page_Load just to make it all in one place. Actually, the
only reason I see to put this stuff in the Page_Load is if you depend on
data from your page like a hidden field or something (to know where you're
at, like the id of what you are editing)
/*************/
In PreRender : It's like "Ok, I'm in that exact state, so what do I display
and how do I display it?"
/*************/

These are not "official" guidelines, but it works pretty well in all
situations.

I hope it helps

ThunderMusic

"Max2006" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Hi,
>
> Are there any best practices or recommendations around using
> "Page_PreRender" vs "Page_Load"? We are thinking to completely switch to
> Page_PreRender event to handle page's controls initialization
> requirements.
>
> I went through some asp.net page life cycle documentations (and diagrams)
> and it seems that we can safely move all Page_Load codes to
> Page_PreRender. Is there any work that we can only do in Page_Load and
> cannot do it in Page_PreRender?
>
> A link to an online article would greatly help.
>
> Thank you,
> Max
>



 
Reply With Quote
 
Walter Wang [MSFT]
Guest
Posts: n/a
 
      07-31-2007
Thanks ThunderMusic for the input.

Hi Max,

I think the "official" guidelines are scattered in following places:

* ASP.NET page life cycle
(http://msdn2.microsoft.com/en-us/library/ms178472.aspx)
* Crash courses on creating controls
(http://msdn2.microsoft.com/en-us/library/aa530687.aspx)

Of course, the official documentation on creating controls is already the
best place to look up information:

#Creating Controls
http://msdn2.microsoft.com/en-us/asp.net/aa336658.aspx


Hope this helps.


Regards,
Walter Wang ((E-Mail Removed), remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

 
Reply With Quote
 
ThunderMusic
Guest
Posts: n/a
 
      07-31-2007
Hi,
for an ASP.NET Page cycle, we found this page to be REALLY useful when we
developped our controls.
http://weblogs.asp.net/jeff/archive/...04/172683.aspx

I hope it helps

ThunderMusic

"Walter Wang [MSFT]" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Thanks ThunderMusic for the input.
>
> Hi Max,
>
> I think the "official" guidelines are scattered in following places:
>
> * ASP.NET page life cycle
> (http://msdn2.microsoft.com/en-us/library/ms178472.aspx)
> * Crash courses on creating controls
> (http://msdn2.microsoft.com/en-us/library/aa530687.aspx)
>
> Of course, the official documentation on creating controls is already the
> best place to look up information:
>
> #Creating Controls
> http://msdn2.microsoft.com/en-us/asp.net/aa336658.aspx
>
>
> Hope this helps.
>
>
> Regards,
> Walter Wang ((E-Mail Removed), remove 'online.')
> Microsoft Online Community Support
>
> ==================================================
> When responding to posts, please "Reply to Group" via your newsreader so
> that others may learn and benefit from your issue.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Best Codeplex sample for showing best coding practices? John Dalberg ASP .Net 3 11-16-2006 12:07 PM
Events Events Events Please Help Chris ASP .Net Web Controls 0 08-30-2005 08:21 PM
Make wxListCtrl fit around contents and parent frame fit around listctrl Piet Python 0 07-18-2004 08:27 AM
events/callbacks - best practices HankC Python 3 10-14-2003 01:06 PM
Best sample app for learning best practices, OO & asp.net? karim ASP .Net 0 07-13-2003 04:26 AM



Advertisments