【发布时间】:2013-11-15 18:16:43
【问题描述】:
我有一个 SharePoint 2013 解决方案项目(内置于 VS2013),其中包含一个设置为 WebApplication 级别的功能,其中一个事件接收器根本没有代码(仅用于测试目的)。
当我将该功能的默认激活属性设置为 true 并部署它时,该功能似乎已被激活,但 ULS 显示以下错误(我用点替换了实际的程序集/文件名):
ArgumentException:无法为功能“........”加载接收器程序集“........” .....”(ID:5e6fc154-bc0d-4768-a558-8d4d8227d92e)。:System.IO.FileNotFoundException:无法加载文件或程序集'...... .' 或其依赖项之一。系统找不到指定的文件。
当我尝试停用它时,我得到了同样的错误。当我将默认时激活属性设置为 false 时,当我尝试手动激活它时会出现同样的错误。
我尝试了以下方法但没有成功:
重新启动 IIS 和计时器服务
将项目的 Assembly Deployment Target 属性设置为 WebApplication 和 GlobalAssemblyCache
我要做的就是在 Web 应用程序级别部署我的功能并让事件接收器运行并能够成功激活/停用该功能。
非常感谢您的帮助。
问候
【问题讨论】:
-
如果您在项目中引用任何程序集,您需要将其包括在 GAC 中部署。您在项目中引用的程序集列表是什么?
-
感谢您的回复路易斯。我没有使用任何非 OOB 程序集。我在事件接收器后面的代码中使用这些: using Microsoft.SharePoint;使用 Microsoft.SharePoint.Administration;使用 Microsoft.SharePoint.Publishing.Navigation;使用 Microsoft.SharePoint.Taxonomy;使用系统;使用 System.Linq;使用 System.Runtime.InteropServices;
-
这很奇怪...您可以浏览您的 GAC 并确保所有这些程序集都在那里...同时确保在您的配置中您的项目平台设置为 AnyCPU 或 x64
-
Luis,请阅读我对您的回复的回答。我不能在这里发表很长的评论。
标签: sharepoint-2010 sharepoint-2013