我们有一个解决方案结构,如:
项目1和项目2都使用Project 3输出dll来实现某些功能。 在 SharePoint 2010 with .NET 3.5 (每个项目)上,一切正常。
现在我们必须迁移到SharePoint 2013意味着我们现在必须使用 .NET 4.5 及其新的安全级别(不再是CAS等)进行编译。
问题是沙盒解决方案由于以下错误而无法激活其功能:
“Namespace.Method”是安全透明的,但它是安全关键类型的成员。
是否无法在沙盒解决方案中使用公共库?
我尝试使用SecuritySafeCritical / SecurityCritical / AllowPartiallyTrust属性和功能,但没有组合可以解决问题。 (No more CAS in 4.5)
答案 0 :(得分:1)
在assemplyInfo.cs文件中添加以下行:
[assembly: AllowPartiallyTrustedCallers]
部署Sandbox解决方案,然后部署Farm解决方案。由于两者都是您的dll,因此服务器场将成功更新dll。