使用System.Reflection验证异常时出错

本文关键字:出错 异常 验证 System Reflection 使用 | 更新日期: 2023-09-27 17:59:32

我们正在Visual Studio 2013中为SharePoint Online开发一个SharePoint Web部件作为沙盒解决方案。我们使用外部dll库iTextSharp来读取和写入PDF。我们在激活解决方案时遇到问题。

我们的错误信息是:

验证程序集itextsharp.dll时出错。

此解决方案引用了禁止的类型System.Reflection.BindingFlags,不能在此网站集上使用。

使用System.Reflection验证异常时出错

您自己已经回答了这个问题:

此解决方案引用了禁止的类型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()