Microsoft Knowledge Base Email Alertz

KBAlertz.com: You receive a configuration error message when you browse a child ASP.NET 1.0 or child ASP.NET 1.1 application that is nested under a parent ASP.NET application

Receive Microsoft Knowledge Base articles by E-Mail?

Every night we scan the Microsoft Knowledge Base. If technologies you're interested in are updated, we'll send you an e-mail. You only get one e-mail a day, and only when new articles are added.

Click here to create a
FREE account
Already have an account?
[Click here to Login]

Search KbAlertz

Advanced Search

Webmasters
Put kbAlertz on your website.
[ Click Here for more! ]





ASP.NET 2.0 Web Hosting with SQL 2005: Click Here!
Discount ASP.NET Hosting


Bug Tracking Software
For bug tracking software or defect tracking software or issue tracking software, visit Axosoft.


Community Site



We Send hundreds of thousands of emails using ASP.NET Email



Expert Web Design & Graphic Design
Design44.com




Mentioned In








Microsoft Knowledge Base Article

This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks




You receive a configuration error message when you browse a child ASP.NET 1.0 or child ASP.NET 1.1 application that is nested under a parent ASP.NET application

Article ID:918830
Last Review:May 11, 2007
Revision:1.3
On This Page

SYMPTOMS

Consider the following scenario:
You create a Microsoft ASP.NET 1.0 or ASP.NET 1.1 child application that is nested under an ASP.NET parent application. For example, the Web site contains the following structure:
http://contoso.com
http://contoso.com/research
The Web.config file for the parent ASP.NET application (http://contoso.com) contains an "<httpModules>" section that references an HTTP module. Additionally, all the following conditions are true:
The HTTP module is not a strong-named assembly. Therefore, the HTTP module is not located in the global assembly cache.
The HTTP module is not in the Bin folder of the child ASP.NET application.
In this scenario, when you browse the child ASP.NET application, you receive an error message that resembles the following:
Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: File or assembly name httpModuleName, or one of its dependencies, was not found.

Source Error:
Line 14: -->
Line 15: <httpModules>
Line 16: <add type="httpModuleType" name="httpModuleName"/>
Line 17: </httpModules>
Line 18: <compilation
Note httpModuleName represents the HTTP module name. httpModuleType represents the class name and the assembly name of the HTTP module.

You also receive a configuration error message if the parent ASP.NET application references any HTTP handlers that are in the Bin folder.

Back to the top

CAUSE

This problem occurs because child ASP.NET applications inherit the parent ASP.NET application settings that are in the Web.config file. Therefore, when you browse a child ASP.NET application, it looks for the parent application HTTP module in the child Bin folder. If the child application cannot find the HTTP module, the application looks in the global assembly cache. Because the HTTP module is not a strong-named assembly, the HTTP module is not in the global assembly cache. Therefore, you receive the error message that is mentioned in the "Symptoms" section.

Back to the top

WORKAROUND

To work around this problem, use one of the following methods. Use the method that is most appropriate to the situation.

Back to the top

Method 1: Create a strong-named assembly

You can create an HTTP module that is a strong-named assembly, and then add the assembly to the Web server global assembly cache. For more information about how to create and use strong-named assemblies, visit the following Microsoft Developer Network (MSDN) Web site:
http://msdn2.microsoft.com/en-us/library/xwb8f617(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/xwb8f617(vs.71).aspx)

Back to the top

Method 2: Copy the DLL assembly file to the child Bin folder

Manually copy the DLL assembly file for the HTTP module to the Bin folder of the child ASP.NET application.

Back to the top

Method 3: Upgrade the applications to ASP.NET 2.0

You can upgrade the ASP.NET applications to ASP.NET 2.0. The problem does not occur in ASP.NET 2.0 because of architectural improvements in application configuration settings. For more information about how to upgrade to ASP.NET 2.0, visit the following MSDN Web site:
http://msdn2.microsoft.com/en-us/asp.net/aa336650.aspx (http://msdn2.microsoft.com/en-us/asp.net/aa336650.aspx)

Back to the top

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Back to the top

MORE INFORMATION

You cannot work around the error by removing the HTTP module name or by clearing the HTTP module name in the Web.config file of the child ASP.NET application. For example, the following Web.config statements do not resolve the problem:

Example 1: You remove the HTTP module name

<httpModules>
  <remove name="httpModuleName"/>
</httpModules>
Note httpModuleName represents the name of the HTTP module.

Example 2: You clear the HTTP module name

<httpModules>
  <clear/>
</httpModules>

Back to the top

REFERENCES

For more information about strong-named assemblies, visit the following MSDN Web site:
http://msdn2.microsoft.com/en-us/library/wd40t7ad(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/wd40t7ad(vs.71).aspx)
For more information about the global assembly cache, visit the following MSDN Web site:
http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx)

Back to the top


APPLIES TO
Microsoft ASP.NET 1.1
Microsoft ASP.NET 1.0

Back to the top

Keywords: 
kbtshoot kbhttpmodule kbprb kbhttphandlers kbasp KB918830

Back to the top

       

Community Feedback System

Very often, it takes hours to solve a problem. Very often, you've looked high and low, and have tried a lot of solutions. When you finally found it, chances are, it was because someone else helped you. Here's your chance to give back. Use our community feedback tool to let others know what worked for you and what didn't.

Please also understand that the community feedback system is not warranted to be correct, it's simply a system that we've built to let people try and help each other. If something in a feedback response doesn't make sense to you, or you're not comfortable making changes that the feedback talks about (like registry edits), please consult a professional.

Thank you for using kbAlertz.com Feedback System.

-- Scott Cate

Be the first to leave feedback, to help others about this knowledge base article.

(Optional) Name

(Optional) Public URL Or Email

Comments
No HTML -- Text Only Please