我们正在Visual Studio 2013中为SharePoint Online开发一个SharePoint Web部件作为沙盒解决方案。我们使用外部dll库iTextSharp
来读取和写入PDF。我们在激活解决方案时遇到问题。
我们的错误信息是:
验证程序集
itextsharp.dll
时出错。
此解决方案引用了禁止的类型System.Reflection.BindingFlags
,不能在此网站集上使用。
您自己已经回答了这个问题:
此解决方案引用了禁止的类型System.Reflection.BindingFlags和不能在此网站上使用收集
您不能将System.Reflection
命名空间与SharePoint Online解决方案一起使用(在大多数情况下)。System.Reflection
中唯一允许的成员是:
- GetValue名称
- GetCustomAttributes
- PropertyType
- GetValue设置值
我建议查看Microsoft开发SharePoint Online解决方案的文档(链接),因为以前有相当多的命名空间可用于SharePoint开发,但现在已被禁止。
以下是微软对此的看法:
因为它是一个多租户环境,所以当您上传沙盒时解决方案库的解决方案,SharePoint Online执行除了由内部部署SharePoint安装。沙盒解决方案不能如果包含调用以下任何命名空间的代码,则激活:
以下是禁止使用的名称空间列表(请参阅文档了解所有例外情况):
- Microsoft.SqlServer
- Microsoft.Win32
- System.Data.Sql
- System.Data.SqlClient
- System.Data.SqlTypes
- System.IO.Pipes
- System.IO.Ports
- 系统反射
- System.Runtime.InteropServices
- System.Runtime.Remoting
- System.线程
- Array.CreateInstance()
- System.Delegate
- Type.GetType(字符串)
- Type.IInvokeMember()