导航

ASPX页面如何加载GAC中的组件?

Posted on 2010-05-11 12:43  蝈蝈俊  阅读(241)  评论(0编辑  收藏  举报

注意这里是 ASPX 页面而不是 ASPX.cs 代码页面引用GAC的组件;

要ASPX 页面引用 GAC 中的组件,则需要做下面两步:

一、在 machine.config 中增加你的 assembly :

在 <assemblies> 节 (在 <configuration>/<system.web>/<compilation>/<compilers>/<assemblies> 可以找到这个节) 中增加下面配置信息:
<add assembly="AssemblyFileName, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5edf592a9c40680c" />

如果你想整个机子都起作用, 就需要改全局的 config 文件, 否则 只需要修改本站点的 web.config

二、 在 ASPX 页面头增加下面一行:

%@Import Namespace="YourNameSpace"%

完成了这两步,你就可以在 ASPX 中使用 GAC 中的组件了。

当然, 如果你WEB站点 bin 目录下有 AssemblyFile, 还是没有请求 GAC 中的, 而是使用的 bin 目录下的, 毕竟优先级上,先从 bin 目录下找组件。

ASPX 文件是第一次被请求时,才编译的,所以,上面步骤你不配置第一步,项目编译时是不报错的,只有执行的时候才会报错。

参考资料:

Adding assembly to GAC
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=106

How to set an IIS Application or AppPool to use ASP.NET 3.5 rather than 2.0
http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx