Search code examples
asp.netvb.nethttpmodule

httpModule from base web application doesn't load in sub-project


VB.Net 2k5 Web Application

The base application has a web.config file with an httpModules section:

The sub-project compiles to the same bin folder as the base application, but I get this message:

Parser Error Message: Could not load file or assembly 'Castle.MonoRail.Framework' or one of its dependencies. The system cannot find the file specified. (c:\inetpub\wwwroot\web.config line 132)

Source Error:

Line 131: [<]httpModules[>]

Line 132:         [<]add name="monorail" type="Castle.MonoRail.Framework.EngineContextModule, Castle.MonoRail.Framework"/[>] --- Error here

Line 133:         [<]add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/[>]

Line 134:         [<]add name="active-record" type="Castle.ActiveRecord.Framework.SessionScopeWebModule, Castle.ActiveRecord"/>


Solution

  • I resolved this. First, yes, the sub-project was building to the parent bin folder.

    The issue was, I had both the parent and child folders set as applications in IIS. I made the child just a virtual folder, and the issue went away.

    Why did this work? I tried shuffling around the HTTPModules, and found that the MS ScriptModule did not have the problem, but if I moved the ActiveRecord module first, it had the problem. I think that those modules have issues if they try to get loaded more than once. (Just a guess.)

    Or it may have been that the security for the child, since it was an application, didn't allow loading assemblies from another application.

    It is working now... on to other issues. Thanks.