ReflectionPermission.Intersect(IPermission) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée et retourne une autorisation qui constitue l’intersection entre l’autorisation actuelle et l’autorisation spécifiée.
public:
override System::Security::IPermission ^ Intersect(System::Security::IPermission ^ target);
public override System.Security.IPermission Intersect (System.Security.IPermission target);
override this.Intersect : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Intersect (target As IPermission) As IPermission
Paramètres
- target
- IPermission
Autorisation à croiser avec l’autorisation actuelle. Elle doit être du même type que l’autorisation actuelle.
Retours
Nouvelle autorisation qui représente l’intersection entre l’autorisation actuelle et l’autorisation spécifiée. Cette nouvelle autorisation est null
si l’intersection est vide.
Exceptions
Le paramètre target
n’a pas la valeur null
et n’est pas du même type que l’autorisation actuelle.
Exemples
L’exemple de code suivant montre le comportement de la Intersect méthode. Cet exemple fait partie d’un exemple plus grand fourni pour la ReflectionPermission classe .
Notes
L’exemple de code est destiné à montrer le comportement de la méthode, et non à illustrer son utilisation. En général, les méthodes des classes d’autorisation sont utilisées par l’infrastructure de sécurité ; ils ne sont généralement pas utilisés dans les applications.
private static void IntersectDemo()
{
ReflectionPermission memberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess);
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
ReflectionPermission reflectionPerm3 = (ReflectionPermission)memberAccessPerm.Intersect(restrictedMemberAccessPerm);
if (reflectionPerm3 != null)
{
Console.WriteLine("The intersection of " + memberAccessPerm.Flags +
" and " + restrictedMemberAccessPerm.Flags + " = " +
((ReflectionPermission)reflectionPerm3).Flags.ToString());
}
else
{
Console.WriteLine("The intersection of " + memberAccessPerm.Flags + " and " +
restrictedMemberAccessPerm.Flags + " is null.");
}
}
Private Shared Sub IntersectDemo()
Dim memberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.MemberAccess)
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
Dim reflectionPerm3 As ReflectionPermission = CType(memberAccessPerm.Intersect(restrictedMemberAccessPerm), ReflectionPermission)
If Not (reflectionPerm3 Is Nothing) Then
Console.WriteLine("The intersection of " + memberAccessPerm.Flags.ToString() + _
" and " + restrictedMemberAccessPerm.Flags.ToString() + " = " + _
CType(reflectionPerm3, ReflectionPermission).Flags.ToString())
Else
Console.WriteLine("The intersection of " + memberAccessPerm.Flags.ToString + " and " + _
restrictedMemberAccessPerm.Flags.ToString() + " is null.")
End If
End Sub
Remarques
L’intersection de deux autorisations est une autorisation qui décrit l’ensemble des opérations qu’elles décrivent en commun. Seule une demande qui passe les deux autorisations d’origine réussit l’intersection.