I am debugging an ASP.NET 2.0 application that is suffering from slow loading of the initial page.
Through adding logging, I've found that the Application_Start
event fires twice on startup with a short delay between the two events. The Session_Start
event also fires twice, with the same Session ID value.
e.g.
[Header] 2010-09-10 14:52:36.331 INFO Web.Global.Application_Start START 2010-09-10 14:52:37.409 INFO Web.Global.Session_Start Session.SessionID=xxqjvun2ce2yqsumq1hfoj45 [Header] 2010-09-10 14:53:10.028 INFO Web.Global.Application_Start START 2010-09-10 14:53:10.325 INFO Web.Global.Session_Start Session.SessionID=xxqjvun2ce2yqsumq1hfoj45
I am running this on my local machine, under IIS 5.1. The project also uses ASP.NET MVC and the aspx page URL being used is altered using routing, using the technique shown on Phil Haack's site.
Any suggestions about what could cause this?
We had a similar situation happen only to discover that it was because we had done an assembly rename and had two copies of the same code referencing that assembly existed, versionA.dll and versionB.dll. So it was being called twice because of that!
We eventually realised that this was down to our IIS configuration.
Some time ago a decision was made to rename the virtual directory used for this website. This was done by adding a whole new virtual directory configuration, leaving the previous one in place. Essentially we had two virtual directories pointing at the same ASP.NET app!
The migration to the new virtual directory was never completed, so parts of the website still referenced the old one. Hence two
Application_Start
events...The fix was to change to setup to the old virtual directory in IIS to be A redirection to a URL with the URL set to /NewVirtualDirectory$S$Q
In my experienced (after hours research and tons of coding) that comes from
I deleted by File Management from hosting panel instead of FTP (FileZilla) and Multiple
Application_Start
events firing gone :-) Root causes of problems was unstoppable Quartz.Net process that was connected to this dll.