Click to Rate and Give Feedback
MSDN
MSDN Library
Visual Studio 2008
Visual Studio
Tools and Features
Microsoft Reports
Class Library
LocalReport Class
LocalReport Methods
 ExecuteReportInCurrentAppDomain Met...
Collapse All/Expand All Collapse All
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
LocalReport.ExecuteReportInCurrentAppDomain Method

Causes processing extensions and expressions in the report to be executed in the current AppDomain.

Namespace: Microsoft.Reporting.WinForms
Assembly: Microsoft.ReportViewer.WinForms (in microsoft.reportviewer.winforms.dll)
Visual Basic (Declaration)
Public Sub ExecuteReportInCurrentAppDomain ( _
    reportEvidence As Evidence _
)
Visual Basic (Usage)
Dim instance As LocalReport
Dim reportEvidence As Evidence

instance.ExecuteReportInCurrentAppDomain(reportEvidence)
C#
public void ExecuteReportInCurrentAppDomain (
    Evidence reportEvidence
)
C++
public:
void ExecuteReportInCurrentAppDomain (
    Evidence^ reportEvidence
)
J#
public void ExecuteReportInCurrentAppDomain (
    Evidence reportEvidence
)
JScript
public function ExecuteReportInCurrentAppDomain (
    reportEvidence : Evidence
)

Parameters

reportEvidence

An Evidence object that contains security information about the report.

Expressions in the report will be run in the current AppDomain with only the Execution security permission flag. By default, custom assemblies are not allowed in this mode. This is the default mode and is the mode to use for trusted reports.

This mode may also be used to run untrusted reports that do use trusted processing extensions.

To allow trusted processing extensions, the application must call AddTrustedCodeModuleInCurrentAppDomain.

In this example, a custom assembly containing a simple utility function that reads some data from a text file is used as an expression in a report.

C#
using System.IO;
using System.Reflection;

public class Util
{
    public static string GetData()
    {
        StreamReader sr = new StreamReader("data.txt");
        string data = sr.ReadToEnd();
        sr.Close();
        return data;
    }
}

The following code is used to allow the report with the custom assembly to run in the current AppDomain.

C#
reportViewer.LocalReport.ReportPath = "Report1.rdlc";
reportViewer.LocalReport.ExecuteReportInCurrentAppDomain(
      Assembly.GetExecutingAssembly().Evidence);
reportViewer.LocalReport.AddTrustedCodeModuleInCurrentAppDomain("Contoso.Utilities, 
      Version=1.0.271.0, Culture=neutral, PublicKeyToken=89012dab8080cc90");
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement | Site Feedback
Page view tracker