解决在SharePoint 2010/2013部署自己的Event Handler后,抛出”不能载入被引用的第三方的程序集"的问题
今天在处理客户的一个问题的时候。我们已经把我们SharePoint EventHandler依赖的第三方的TIBCO.EMS.dll注冊到GAC里面了,可是日志里面还是抛出了不能载入被引用的第三方的程序集的异常。
在描写叙述解决方式之前。我在这里把相关背景交代一下,我们知道SharePoint提供了Event handler(用户操作事件钩子)让SharePoint用户开发自己的业务逻辑。SharePoint的Event Handler说白了就是,当SharePoint用户操作SharePoint的数据的时候,比方在SharePoint List(列表)中加入一行数据(ListItem)时,这个操作行为会被Event Handler 监听到。我们就能够把我们的业务逻辑写到SharePoint提供的Event Handler的接口中;这样一旦增删改查事件发生后,就会调用在Event Handler里面我们自己写的业务逻辑;在我们自己写的业务逻辑里面能够引用第三方库去实现自己的业务需求。比方在我们自己开发測试的这个环境里面。我们调用了TIBCO.EMS.dll 库去把消息发送到TIBCO的JMSserver上。这个就是为什么我们须要用GACUtil工具命令把TIBCO.EMS.dll注冊到GAC里面去的原因。
OK。基本背景交代完成,那么如今我们来看详细的问题,当我们把我们自己定制的SharePoint Event Handler依赖的TIBCO.EMS.dll注冊到GAC里面了。然后再SharePoint的
站点上面改动一条測试数据。 这个时候,SharePoint Event Handler的事件的的确确触发了,可是却抛出了以下的异常。
it catchs the excpetion:Could not load file or assembly 'TIBCO.EMS, Version=1.0.700.12, Culture=neutral, PublicKeyToken=5b83db8ff05c64ba' or one of its dependencies. The system cannot find the file specified.
奇怪。我们明明把TIBCO.EMS.dll注冊到GAC里面去了,为什么运行Event Handler的IIS的w3wp.exe的后台进程载入不到TIBCO.EMS.dll库呢?这个问题纠结了我不少的时间。
后面在网上找到一篇文章,http://blogs.technet.com/b/speschka/archive/2013/10/26/another-quot-could-not-load-file-or-assembly-quot-error-resolved.aspx 里面描写叙述了和我这边类似的问题,我抱着试一试的态度,把SharePoint的IIS又一次启动了一下。
感谢上帝,这个问题攻克了。
今天花一个小时的时间,把我遇到的这个问题整理出来。希望大家遇到类似的问题后,不要太过于纠结。能够试试又一次启动SharePoint的IIS,试试看有没有效果。
- 解决在SharePoint 2010/2013部署自己的Event Handler后,抛出”不能加载被引用的第三方的程序集"的问题
- 机房重构所遇问题"未能载入文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件"的解决的方法集锦
- [解决问题][不能更新eclipse]错误提示:Error retrieving "feature.xml". [error in opening zip file]
- 解决"未能加载文件或程序集,或它的某一个依赖项,试图加载格式不正确的程序"问题一法
- paip.python错误解决 "0x64024e96" 指令引用的 "0x00000135" 内存。该内存不能为 "read"。
- 可空类型"int?" 解决: 【数据库里的int类型可以为null,而在c#里int类型不能为Nul】的问题
- .Net环境水晶报表在98下发布,出现"不能加载报表..."问题的解决
- Infopath 2013向Sharepoint 2013发布表单时提示"下列URL无效"的解决办法
- 章鱼哥出品—VB.NET DataGridView绑定数据源 "与货币管理器的位置关联的行不能设置为不可见" 问题的解决
- 解决SharePoint 2013/2010 people picker控件找不到跨域用户的问题
- Sharepoint 站点下应用程序虚拟路径下出现"不能进行输出缓存处理",错误ID 5787 解决方法
- oracle 临时表 解决 "表 *** 发生了变化,触发器/函数不能读"的问题
- ISA 2004 防火墙自己不能上网,提示"错误代码:12206 代理链循环"的解决方法
- 打开页面时出现"Automation 服务器不能创建对象"问题的解决方法
- Android中launcherMode="singleTask"详解<解决home键返回不能出现原界面问题>
- [解决问题][不能更新eclipse]错误提示:Error retrieving "feature.xml". [error in opening zip file]
- oracle 临时表 解决 "表 *** 发生了变化,触发器/函数不能读"的问题
- [问题解决]Visio“搜索形状"不能用
- 解决Xcode引入第三方SDK找不到头文件和_OBJC_CLASS_$_某文件名", referenced from:xx 问题
- 解决 HTML 转到 XHTML 中,表格(Table)不能居中的问题。align="center" 过时问题