アセンブリを作成し、ReportingServicesレポートで参照しました。レポートをローカルでテストし(機能します)、レポートをレポートサーバーにアップロードしました(機能しません)。
これが私が書いたカスタムコードによってスローされるエラーです。
System.Security.SecurityException:タイプ'System.Security.Permissions.SecurityPermission、mscorlib、Version = 2.0.0.0、Culture = neutral、PublicKeyToken=b77a5c561934e089'のアクセス許可の要求が失敗しました。System.Security.CodeAccessSecurityEngine.CheckNReturnSO(PermissionToken permToken、CodeAccessPermission request、StackCrawlMark&stackMark、Int32 unrestrictedOverride、Int32 create)at System.Security.CodeAccessSecurityEngine.Assert(CodeAccessPermission cap、StackCrawlMark&stackMark)at System.Security.CodeAccessPermission.Assert()at ReportExprHostImpl.CustomCodeProxyの[SnippedMethodName]。[SnippedMethodName]失敗したアクションは次のとおりです。Demand最初に失敗したアクセス許可のタイプは次のとおりです。System.Security.Permissions.SecurityPermission失敗したアセンブリのゾーンは次のとおりです。
このプロジェクトは私が受け継いだものであり、私はそれをよく知らない。私は(今)コードを持っていますが、少なくともそれで作業することができます:)
失敗しているコードは次のとおりです。
Dim fio As System.Security.Permissions.FileIOPermission = New System.Security.Permissions.FileIOPermission(Security.Permissions.PermissionState.Unrestricted)
fio.Assert()
ただし、この種のものもどこにでもあります。
Private Declare Function CryptHashData Lib "advapi32.dll" (ByVal hhash As Integer, ByVal pbData As String, ByVal dwDataLen As Integer, ByVal dwFlags As Integer) As Integer
これらのいずれかが、ReportingServicesがそのままでは対応できないものであることがわかります。