当我访问自定义DLL时,在事件处理程序中出现错误

时间:2012-08-06 09:08:32

标签: tridion tridion-2011

我为Page的checkoutevent创建了一个事件处理程序,我已将dll放在正确的位置并重新启动了com +和IIS。

在我的解决方案中,我添加了一个我自己的自定义dll,并且正在调用其中一个方法。 我收到错误“无法加载文件或程序集'myassembly.dll'”,我试图添加我的自定义DLL,我保持事件hanlder DLL,并尝试通过放置在\ bin文件夹并重新启动com +,iis。仍然得到同样的错误。

当我在事件处理程序中添加自定义dll时,是否需要做更多的事情?

1 个答案:

答案 0 :(得分:4)

用于事件系统的DLL通过Tridion.ContentManager.config文件加载,并由其位置引用。但是,不会检查此位置是否有可能参考。

我相信遵循.NET标准,通常的方法是将引用的程序集放在GAC中,以便Event System代码可以找到它们。

您拥有的另一个选择是确保您的引用在您的事件系统程序集中编译。如果你有引用的源代码,你可以将它们包含在项目中,否则你可以使用像ILMerge这样的后期构建工具将你的程序集组合成一个DLL。

我认为过去做的最后一个是将您的引用放在.. \ Tridion \ bin文件夹中,但我不确定它是否仍适用于2011 ...