a DotNetStyling - .Net World by Armen Ayvazyan : ASP.NET: Monitoring of web page life cycle
Welcome to DotNetStyling Sign in | Join | Help
Add to Technorati Favorites Add to Google Reader or Homepage Add to My AOL Subscribe in FeedLounge Subscribe in Bloglines Add to Excite MIX Add to flurry Add to Pageflakes Subscribe in NewsGator Online


ASP.NET: Monitoring of web page life cycle

 

I wrote simple code which is showing order of execution of events and protected methods related to the page life cycle.

I simply added output messages into the  each event and protected method of Page and Control (UserControl which is located on that page). This is an example of how I did it:

...

protected void Page_Init(object sender, EventArgs e)
{
    Container.messageCollection.Add("P: Page_Init");
}

...

protected override void OnInit(EventArgs e)
{
    Container.messageCollection.Add("P: Before base.OnInit");
    base.OnInit(e);
    Container.messageCollection.Add("P: After base.OnInit");
}

etc.

After filling a collection I just write messages out in order how they were added.

 

And this is an output result:

1: P: Before base.OnPreInit

2: P: Page_PreInit

3: P: After base.OnPreInit

4: C: Before base.OnInit

5: C: Page_Init

6: C: After base.OnInit

7: P: Before base.OnInit

8: P: Page_Init

9: P: After base.OnInit

10: P: Before base.OnInitComplete

11: P: Page_InitComplete

12: P: After base.OnInitComplete

13: P: Before base.OnPreLoad

14: P: Page_PreLoad

15: P: After base.OnPreLoad

16: P: Before base.OnLoad

17: P: Page_Load

18: P: After base.OnLoad

19: C: Before base.OnLoad

20: C: Page_Load

21: C: After base.OnLoad

22: P: Before base.OnLoadComplete

23: P: Page_LoadComplete

24: P: After base.OnLoadComplete

25: P: Before base.OnPreRender

26: P: Page_PreRender

27: P: After base.OnPreRender

28: C: Before base.OnPreRender

29: C: Page_PreRender

30: C: After base.OnPreRender

31: P: Before base.OnPreRenderComplete

32: P: After base.OnPreRenderComplete

33: C: Before base.OnUnload

34: C: Page_Unload

35: C: After base.OnUnload

36: P: Before base.OnUnload

37: P: Page_Unload

38: P: After base.OnUnload

First "C" letter or red color are messages from UserControl side. Messages with "P" letter or blue color represent page level.


So, now you can see an order how events in page and contol occur during page life cycle.

Posted: 15. dubna 2007 7:47 by admin
Filed under: , ,

Comments

New Comments to this post are disabled