我在 IIS 7.5 上有一个网站,配置如下。
ParentWebSite
---ChildWebApp
当我访问以下网址时,它工作正常。
http://ParentWebSite/
当我使用以下 URL 访问 childWebApplication 时。
http://ParentWebSite/ChildWebApp
它给出了一个编译错误,显示找不到一个命名空间 (ParentWebSite.BLL)。但是该命名空间仅在 ParentWebSite 中使用,而在 ChildWebApp 中根本没有引用。
我的问题为什么我的 ChildWebApp 依赖于 ParentWebSite dll?
当两个都使用自己的应用程序池时,ChildWebApp 不是独立于 ParentWebSite 部署的吗?
最佳答案
失败的原因可能是在 parentWebSite web.config 中可能引用了模块或处理程序或该命名空间内的类似内容。由于配置继承给子应用程序,因此您的子应用程序尝试加载相同的命名空间,但它可能在父级或/app_code/的/bin 目录内的程序集中定义,但它们不在子级文件夹中。
因此,查看父级的 web.config 并查看是否可以找到在那里引用的程序集。
如果我是对的,您可以设置 inheritInChildApplications="false"来防止这种继承行为。
关于Asp.net 4.0 子应用程序在 IIS 7.5 上不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3087892/