沙箱解决方案SharePoint 2013中的公共库

时间:2013-11-19 09:20:40

标签: c# sharepoint sharepoint-2010 .net-4.5 sharepoint-2013

我们有一个解决方案结构,如:

  1. 项目1(沙箱
  2. 项目2(农场
  3. 项目3(公共图书馆,dll
  4. 项目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

1 个答案:

答案 0 :(得分:1)

在assemplyInfo.cs文件中添加以下行:

[assembly: AllowPartiallyTrustedCallers]

部署Sandbox解决方案,然后部署Farm解决方案。由于两者都是您的dll,因此服务器场将成功更新dll。