Partager via


Méthode LocalReport.AddTrustedCodeModuleInCurrentAppDomain

Remarque : cette API est désormais obsolète.

Ajoute l'assembly fourni à la liste des assemblys dont l'exécution est approuvée dans l'objet AppDomain actuel.

Espace de noms :  Microsoft.Reporting.WebForms
Assembly :  Microsoft.ReportViewer.WebForms (en Microsoft.ReportViewer.WebForms.dll)

Syntaxe

'Déclaration
<ObsoleteAttribute("This method requires Code Access Security policy, which is deprecated.  For more information please go to https://go.microsoft.com/fwlink/?LinkId=160787.")> _
Public Sub AddTrustedCodeModuleInCurrentAppDomain ( _
    assemblyName As String _
)
'Utilisation
Dim instance As LocalReport
Dim assemblyName As String

instance.AddTrustedCodeModuleInCurrentAppDomain(assemblyName)
[ObsoleteAttribute("This method requires Code Access Security policy, which is deprecated.  For more information please go to https://go.microsoft.com/fwlink/?LinkId=160787.")]
public void AddTrustedCodeModuleInCurrentAppDomain(
    string assemblyName
)
[ObsoleteAttribute(L"This method requires Code Access Security policy, which is deprecated.  For more information please go to https://go.microsoft.com/fwlink/?LinkId=160787.")]
public:
void AddTrustedCodeModuleInCurrentAppDomain(
    String^ assemblyName
)
[<ObsoleteAttribute("This method requires Code Access Security policy, which is deprecated.  For more information please go to https://go.microsoft.com/fwlink/?LinkId=160787.")>]
member AddTrustedCodeModuleInCurrentAppDomain : 
        assemblyName:string -> unit 
public function AddTrustedCodeModuleInCurrentAppDomain(
    assemblyName : String
)

Paramètres

  • assemblyName
    Type : System.String
    Nom de l'assembly à ajouter.

Notes

Important

Cette méthode est déconseillée pour le .NET Framework 4, car la fonctionnalité de sécurité d'accès du code (CAS, Code Access Security) sur laquelle elle s'appuie est déconseillée dans le .NET Framework 4. À la place, le contrôle ReportViewer s'exécute toujours dans le domaine d'application sandbox. Vous devez utiliser AddFullTrustModuleInSandboxAppDomain et SetBasePermissionsForSandboxAppDomain. Si vous souhaitez continuer à utiliser cette méthode avec .NET Framework 4, vous devez utiliser l'élément de configuration <NetFx40_LegacySecurityPolicy> dans le fichier Web.config de votre application ASP.NET. Sinon, cette méthode lève une InvalidOperationException.

Cette méthode continuera à fonctionner avec .NET Framework 3.5.

Pour plus d'informations, consultez Code Access Security Policy Compatibility and Migration.

Les expressions présentes dans le rapport seront exécutées dans l'objet AppDomain actuel avec uniquement l'indicateur d'autorisation de sécurité Execution. Par défaut, les assemblys personnalisés ne sont pas autorisés dans ce mode. La méthode AddTrustedCodeModuleInCurrentAppDomain peut être utilisée pour autoriser l'utilisation d'assemblys personnalisés dans l'objet AppDomain actuel.

Le nom de l'assembly transmis dans le paramètre assemblyName doit correspondre à celui spécifié dans l'élément CodeModule du fichier de définition de rapport.

Exemples

Dans cet exemple, un assembly personnalisé contenant une fonction utilitaire simple qui calcule des factorielles est utilisé comme expression dans un rapport.

public class Util
{
    public static int Factorial(int n)
    {
        return ((n <= 1) ? 1 : (n * Factorial(n - 1))); 
    }
}

Le code ci-dessous permet d'ajouter l'assembly personnalisé à l'objet AppDomain actuel.

reportViewer.LocalReport.ReportPath = "Report1.rdlc";

reportViewer.LocalReport.AddTrustedCodeModuleInCurrentAppDomain(
   "Contoso.Utilities, 
   Version=1.0.271.0, Culture=neutral,
   PublicKeyToken=89012dab8080cc90");

Pour plus d'informations sur les assemblys personnalisés, consultez « Utilisation des assemblys personnalisés avec des rapports » dans la documentation en ligne de SQL Server.

Voir aussi

Référence

LocalReport Classe

Espace de noms Microsoft.Reporting.WebForms