An error occurred during local report processing.Failed to load expression host assembly. Details: Request for the permission of
1316 ワード
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メソッド
Vs 2010に新たに追加された方法.指定したパーミッションセットを使用して、砂箱アプリケーションドメインの基本パーミッションを設定します.
カスタムコードセットとレポート式の計算には、砂箱アプリケーションドメインの基本権限が適用されます.このメソッドでは、既存のすべての基本権限セットが指定された権限セットに置き換えられることに注意してください.指定した権限セットに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