我们有一个由 WSP 文件部署的 SharePoint 计时器作业。该作业由 SharePoint 功能安装,其 dll 放置在 GAC 上。每个其他 SharePoint 自定义都由另一个 WSP 文件部署,该文件位于 SharePoint 站点的 bin 文件夹中,而不是 GAC 上。
SharePoint 计时器作业由服务 Windows SharePoint Services 计时器 (OWSTIMER.EXE) 执行,并且没有任何 http 或 SharePoint 上下文。
如果作业有任何外部引用,我们也必须将每个引用的 dll 都放在 GAC 上。但是,我们不能这样做,因为服务器策略不允许 GAC 部署除作业 dll 之外的任何其他内容......
然后,我们的团队手动复制并粘贴将被引用的代码,并将其放入作业项目中,并构建一个巨大的独特 dll。这种复制过程造成了各种各样的麻烦,因为有时代码在工作内部变得不同步。尽管如此,复制从来都不是一件美好的事情,我们知道当我们因此而死时,我们会直接下地狱。
是否可以部署作业而不在 gac 上部署其引用?或者是否可以将引用的 dll 合并到一个唯一的 dll 中?或者如果其他一切都失败了,是否可以构建项目以便在编译时复制引用的代码?
谢谢你的先进。