我是靠谱客的博主 傻傻太阳,最近开发中收集的这篇文章主要介绍ReportViewer10.0 Windows验证模式下 An error occurred during local report processing.Failed to load expres...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述


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

2011061011020214.gif

最后

以上就是傻傻太阳为你收集整理的ReportViewer10.0 Windows验证模式下 An error occurred during local report processing.Failed to load expres...的全部内容,希望文章能够帮你解决ReportViewer10.0 Windows验证模式下 An error occurred during local report processing.Failed to load expres...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部