G
Guest
We recently moved an important ASP.Net 1.1 web application to 2.0 using Web
Application Projects. Testing went well in our staging environment. We moved
to the production environment, and everything was great for a full day. A day
later we changed the trace enabled setting to false in the web.config. At
that point, all 5 of our web servers which the site was deployed to got a
FileNotFoundException - Could not load file or assembly App_Web_xxxx error
(full error below) for just about any page on the site.
I could only reproduce the issue once in our staging environment. I have
tried to reproduce countless more times in our staging and production
environments, but am unable to. I have scoured the internet and MS knowledge
base articles, and can find no definite fix (details below). I found the MS
knowledge base article and hotfix 915782. So I contact MS support to receive
the hotfix. Well, we found that our current version of the ASP.Net files is
..210, but the hotfix versions are .80. So basically MS said that it may or
may not fix the issue, and could potentially cause other issues as well.
Soooo, does anyone know the status on this error? What exactly is the cause
of the error? Can someone who has first hand knowledge of this error, or a MS
employee respond to this?
Here are the various things I have read that apparently fixed the issue. Can
anyone comment on whether these worked for them or not (would be nice to get
an MS person here to get an official response):
1. Change compilation mode to batch="false". This compiles each page as it
is accessed. I read that this is not recommended for large sites, though I'm
a little unsure why. Will it work, and is it really bad to do for large sites?
2. Pre-compile the site. This is OK, though it will be a pain to have to
deploy the whole site again if we just want to change the wording of a
sentence. But will it work?
3. Reference all controls that a page might reference in the top of the ASPX
page, even if the control is in another control that the page is referencing.
This would be crazy to do for our site, and would be a complete maintenance
nightmare. I don't think this one is practical for us.
4. Avoid nested control references. This really isn't practical for us either.
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 1/26/2007 4:46:29 PM
Event time (UTC): 1/26/2007 9:46:29 PM
Event ID: 2bd565d1e320409a86b92dba8a088cfa
Event sequence: 297
Event occurrence: 148
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/2/Root-2-128143212203368910
Trust level: Full
Application Virtual Path: /
Application Path: D:\inetpub\websitename\
Machine name: WWW1
Process information:
Process ID: 3616
Process name: w3wp.exe
Account name: NT AUTHORITY\SYSTEM
Exception information:
Exception type: FileNotFoundException
Exception message: Could not load file or assembly 'App_Web_wshnbbhs,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its
dependencies. The system cannot find the file specified.
Request information:
Request URL: http://192.168.200.61/Home.aspx
Request path: /Home.aspx
User host address: 192.168.200.4
User:
Is authenticated: False
Authentication Type:
Thread account name: NT AUTHORITY\SYSTEM
Thread information:
Thread ID: 5
Thread account name: NT AUTHORITY\SYSTEM
Is impersonating: False
Stack trace: at
ASP.ui_controls_websiteheader_ascx.__BuildControltagLinePhone() at
ASP.ui_controls_websiteheader_ascx.__BuildControl__control13(HtmlTableCellCollection
__ctrl) at
ASP.ui_controls_websiteheader_ascx.__BuildControlpersonalWithTag() at
ASP.ui_controls_websiteheader_ascx.__BuildControlTree(ui_controls_websiteheader_ascx
__ctrl) at ASP.ui_controls_websiteheader_ascx.FrameworkInitialize() at
System.Web.UI.UserControl.InitializeAsUserControlInternal() at
System.Web.UI.UserControl.InitializeAsUserControl(Page page) at
ASP.home_aspx.__BuildControlwebsiteHeader() at
ASP.home_aspx.__BuildControlHome() at
ASP.home_aspx.__BuildControlTree(home_aspx __ctrl) at
ASP.home_aspx.FrameworkInitialize() at
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint,
Boolean includeStagesAfterAsyncPoint) at
System.Web.UI.Page.ProcessRequest() at
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) at
System.Web.UI.Page.ProcessRequest(HttpContext context) at
ASP.home_aspx.ProcessRequest(HttpContext context) at
System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&
completedSynchronously)
If I find anything else out, I will follow up here as well.
Thanks for taking the time to read about my issue!
-Mike
Application Projects. Testing went well in our staging environment. We moved
to the production environment, and everything was great for a full day. A day
later we changed the trace enabled setting to false in the web.config. At
that point, all 5 of our web servers which the site was deployed to got a
FileNotFoundException - Could not load file or assembly App_Web_xxxx error
(full error below) for just about any page on the site.
I could only reproduce the issue once in our staging environment. I have
tried to reproduce countless more times in our staging and production
environments, but am unable to. I have scoured the internet and MS knowledge
base articles, and can find no definite fix (details below). I found the MS
knowledge base article and hotfix 915782. So I contact MS support to receive
the hotfix. Well, we found that our current version of the ASP.Net files is
..210, but the hotfix versions are .80. So basically MS said that it may or
may not fix the issue, and could potentially cause other issues as well.
Soooo, does anyone know the status on this error? What exactly is the cause
of the error? Can someone who has first hand knowledge of this error, or a MS
employee respond to this?
Here are the various things I have read that apparently fixed the issue. Can
anyone comment on whether these worked for them or not (would be nice to get
an MS person here to get an official response):
1. Change compilation mode to batch="false". This compiles each page as it
is accessed. I read that this is not recommended for large sites, though I'm
a little unsure why. Will it work, and is it really bad to do for large sites?
2. Pre-compile the site. This is OK, though it will be a pain to have to
deploy the whole site again if we just want to change the wording of a
sentence. But will it work?
3. Reference all controls that a page might reference in the top of the ASPX
page, even if the control is in another control that the page is referencing.
This would be crazy to do for our site, and would be a complete maintenance
nightmare. I don't think this one is practical for us.
4. Avoid nested control references. This really isn't practical for us either.
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 1/26/2007 4:46:29 PM
Event time (UTC): 1/26/2007 9:46:29 PM
Event ID: 2bd565d1e320409a86b92dba8a088cfa
Event sequence: 297
Event occurrence: 148
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/2/Root-2-128143212203368910
Trust level: Full
Application Virtual Path: /
Application Path: D:\inetpub\websitename\
Machine name: WWW1
Process information:
Process ID: 3616
Process name: w3wp.exe
Account name: NT AUTHORITY\SYSTEM
Exception information:
Exception type: FileNotFoundException
Exception message: Could not load file or assembly 'App_Web_wshnbbhs,
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its
dependencies. The system cannot find the file specified.
Request information:
Request URL: http://192.168.200.61/Home.aspx
Request path: /Home.aspx
User host address: 192.168.200.4
User:
Is authenticated: False
Authentication Type:
Thread account name: NT AUTHORITY\SYSTEM
Thread information:
Thread ID: 5
Thread account name: NT AUTHORITY\SYSTEM
Is impersonating: False
Stack trace: at
ASP.ui_controls_websiteheader_ascx.__BuildControltagLinePhone() at
ASP.ui_controls_websiteheader_ascx.__BuildControl__control13(HtmlTableCellCollection
__ctrl) at
ASP.ui_controls_websiteheader_ascx.__BuildControlpersonalWithTag() at
ASP.ui_controls_websiteheader_ascx.__BuildControlTree(ui_controls_websiteheader_ascx
__ctrl) at ASP.ui_controls_websiteheader_ascx.FrameworkInitialize() at
System.Web.UI.UserControl.InitializeAsUserControlInternal() at
System.Web.UI.UserControl.InitializeAsUserControl(Page page) at
ASP.home_aspx.__BuildControlwebsiteHeader() at
ASP.home_aspx.__BuildControlHome() at
ASP.home_aspx.__BuildControlTree(home_aspx __ctrl) at
ASP.home_aspx.FrameworkInitialize() at
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint,
Boolean includeStagesAfterAsyncPoint) at
System.Web.UI.Page.ProcessRequest() at
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) at
System.Web.UI.Page.ProcessRequest(HttpContext context) at
ASP.home_aspx.ProcessRequest(HttpContext context) at
System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&
completedSynchronously)
If I find anything else out, I will follow up here as well.
Thanks for taking the time to read about my issue!
-Mike