在IIS中,我有一个父应用程序(默认网站),它有子应用程序。我正在我的父应用程序中编写http处理程序,这个http处理程序将成为所有子应用程序的网关,因此当任何子应用程序URL命中时,它将通过父应用程序中的http处理程序进行处理。 在我试图打开子应用程序后感到沮丧,它给了我错误
无法加载文件或程序集' Intelligize.QC.Web'或其中一个依赖项。系统找不到指定的文件。
这是我在父应用程序中的web.config文件
<httpHandlers>
<add verb="*" path="*" type="Intelligize.QC.Web.AuthorizationHandler, Intelligize.QC.Web" validate="true" />
</httpHandlers>
请帮我解决这个问题。我已经浪费了太多时间
答案 0 :(得分:1)
有关此类错误的更多信息,请启用FusionLog。 Here你可以阅读如何。在日志文件中,您可以看到装配负载信息并正确修复它。
答案 1 :(得分:1)
子应用程序继承父应用程序web.config文件。
在父应用程序web.config文件中写这个以避免在子应用程序中继承web.config文件:
<location path="." inheritInChildApplications="false">
<system.web>
...
</system.web>
</location>
答案 2 :(得分:0)
由于您提到此处理程序正在作为子应用程序的网关工作,因此我假设此处理程序在父应用程序的上下文中具有角色,而在子应用程序中不需要它。如果是这种情况,那么您只需将其从子应用程序的web.config中删除即可。为了做到这一点,你需要
通过向处理程序配置添加name属性,为父应用程序的web.config中的处理程序命名。
&LT; HttpHandlers的&GT; &LT;添加动词=&#34; &#34;路径=&#34; &#34; type =&#34; Intelligize.QC.Web.AuthorizationHandler,Intelligize.QC.Web&#34;验证=&#34;真&#34;命名=&#34;&MyHandler的#34; /&GT; &LT; / HttpHandlers的&GT;
从子网站web.config
中删除此处理程序&LT; HttpHandlers的&GT; &LT;删除name =&#34; MyHandler&#34; /&GT; &LT; / HttpHandlers的&GT;