zoukankan      html  css  js  c++  java
  • ReportViewer10.0 Windows验证模式下 An error occurred during local report processing.Failed to load expression host assembly

    An error occurred during local report processing.Failed to load expression host assembly. Details: Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=4.0.0.0,Culture=neutral, PublicKeyToken=b77a5c561934e0

    解决方法,为ReportViewer的LocalReport设置权限:
    var reportInstance = new LocalReport();
    reportInstance.SetBasePermissionsForSandboxAppDomain(new PermissionSet(PermissionState.Unrestricted));

    I don't really understand why. I do understand that the report is being granted permissions it can't get from WIF, but I don't understand which permissions those are or why it needs them. So, my answer "gives a man a fish," but can someone else "teach a man to fish" by explaining the deeper issue?

    LocalReport.SetBasePermissionsForSandboxAppDomain 方法

    为Vs2010新添加的方法。使用提供的权限集设置沙盒应用程序域的基本权限。

    沙盒应用程序域中的基本权限应用于自定义代码程序集和报表表达式的计算。请注意,此方法将所有现有基本权限集替换为提供的权限集。您应当确保提供的权限集包括 Execution权限。否则,将无法执行任何自定义代码程序集,且无法计算任何表达式。

    如果您更改了权限,请确保不能使用 LocalReport 对象访问任何不可信的报表定义。在 .NET Framework 3.5(或启用了 LegacySecurityPolicy 的 .NET Framework 4 中),必须显式调用 ExecuteReportInSandboxAppDomain 方法才能切换到沙盒应用程序域模式。

    http://msdn.microsoft.com/zh-cn/library/microsoft.reporting.webforms.localreport.aspx

    http://stackoverflow.com/questions/4794968/reporting-services-localreport-and-wif

  • 相关阅读:
    校验函数
    声明
    主程序(开始检查)
    活代码LINQ——09
    活代码LINQ——08
    活代码LINQ——07
    活代码LINQ——06
    活代码LINQ——05
    活代码LINQ——04
    活代码LINQ——03
  • 原文地址:https://www.cnblogs.com/dupeng0811/p/2057256.html
Copyright © 2011-2022 走看看