Partager via


FirstMatchCodeGroup.Resolve(Evidence) Méthode

Définition

Résout la stratégie pour le groupe de codes et ses descendants pour un ensemble de preuves.

public:
 override System::Security::Policy::PolicyStatement ^ Resolve(System::Security::Policy::Evidence ^ evidence);
public override System.Security.Policy.PolicyStatement Resolve (System.Security.Policy.Evidence evidence);
override this.Resolve : System.Security.Policy.Evidence -> System.Security.Policy.PolicyStatement
Public Overrides Function Resolve (evidence As Evidence) As PolicyStatement

Paramètres

evidence
Evidence

Preuve pour l'assembly.

Retours

PolicyStatement

Instruction de stratégie comprenant les autorisations accordées par le groupe de codes avec des attributs facultatifs ou null si le groupe de codes ne s'applique pas (la condition d'appartenance ne correspond pas à la preuve spécifiée).

Exceptions

Le paramètre evidence a la valeur null.

Plusieurs groupes de code (y compris le groupe de codes parent et les groupes de codes enfants) sont marqués Exclusive.

Exemples

Le code suivant montre l’utilisation de la méthode pour résoudre la Resolve stratégie pour le groupe de codes. Cet exemple de code fait partie d’un exemple plus grand fourni pour la FirstMatchCodeGroup classe.

Assembly^ assembly = Members::typeid->Assembly;
Evidence^ executingEvidence = assembly->Evidence;

PolicyStatement^ policy = codeGroup->Resolve( executingEvidence );
Assembly assembly = typeof(Members).Assembly;
Evidence executingEvidence = assembly.Evidence;

PolicyStatement policy = codeGroup.Resolve(executingEvidence);
Dim executingAssembly As [Assembly] = Me.GetType().Assembly
Dim executingEvidence As Evidence
executingEvidence = executingAssembly.Evidence

Dim policy As PolicyStatement = codeGroup.Resolve(executingEvidence)

Remarques

Étant donné qu’un assembly doit être chargé, cette méthode évalue le groupe de codes en vérifiant d’abord la condition d’appartenance par rapport à la preuve spécifiée. S’il existe une correspondance, cette méthode retourne une instruction de stratégie pour le groupe de codes, y compris l’évaluation des groupes de code enfants.

Pour les groupes de codes de première correspondance, la condition d’appartenance de chaque groupe de code enfant est testée par rapport à la preuve dans l’ordre dans lequel ils ont été ajoutés; seule la première correspondance est résolue avec le jeu de preuves. S’il n’y a pas de correspondance, l’instruction de stratégie du groupe de codes parent de première correspondance s’applique. Le type de groupe de code enfant correspondant détermine la façon dont tous les groupes enfants sous celui-ci sont appliqués, selon la façon dont les Resolve méthodes de ces groupes enfants fonctionnent.

Le système de sécurité .NET Framework utilise Resolve sur les niveaux de stratégie pour déterminer les autorisations à accorder au code chargé à partir des instructions de stratégie résultantes et de la demande de code sur l’assembly.

Cette opération de cette méthode est la suivante :

Si la condition d’appartenance ne correspond pas à la preuve spécifiée, retournez null; sinon, définissez le jeu d’autorisations à renvoyer (P) égal à l’instruction de stratégie du groupe de codes et continuez. Pour chaque groupe de code enfant, résolvez le groupe de codes avec la même preuve; si le résultat n’est pas null, retournez cette instruction de stratégie. Si aucun groupe de code enfant n’est mis en correspondance, retournez P (instruction de stratégie du parent).

S’applique à