Condividi tramite


ReflectionPermission.Union(IPermission) Metodo

Definizione

Crea un'autorizzazione che rappresenta l'unione dell'autorizzazione corrente e di quella specificata.

public:
 override System::Security::IPermission ^ Union(System::Security::IPermission ^ other);
public override System.Security.IPermission Union (System.Security.IPermission other);
override this.Union : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Union (other As IPermission) As IPermission

Parametri

other
IPermission

Autorizzazione da combinare con quella corrente. Deve essere dello stesso tipo dell'autorizzazione corrente.

Restituisce

IPermission

Nuova autorizzazione che rappresenta l'unione dell'autorizzazione corrente e di quella specificata.

Eccezioni

Il parametro other non è null e non è dello stesso tipo dell'autorizzazione corrente.

Esempio

Nell'esempio Union di codice seguente viene illustrato il comportamento del metodo. Questo esempio fa parte di un esempio più grande fornito per la ReflectionPermission classe.

Nota

L'esempio di codice è destinato a mostrare il comportamento del metodo, non per illustrarne l'uso. In generale, i metodi delle classi di autorizzazione vengono usati dall'infrastruttura di sicurezza; non vengono in genere usati nelle applicazioni.

private static void UnionDemo()
{
    ReflectionPermission memberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess);
    ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
    ReflectionPermission reflectionPerm3 = (ReflectionPermission)memberAccessPerm.Union(restrictedMemberAccessPerm);
    if (reflectionPerm3 == null)
    {
        Console.WriteLine("The union of " + memberAccessPerm.Flags + " and " +
            restrictedMemberAccessPerm.Flags + " is null.");
    }
    else
    {
        Console.WriteLine("The union of " + memberAccessPerm.Flags + " and " +
            restrictedMemberAccessPerm.Flags + " = " +
            ((ReflectionPermission)reflectionPerm3).Flags.ToString());
    }
}
Private Shared Sub UnionDemo()
    Dim memberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.MemberAccess)
    Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
    Dim reflectionPerm3 As ReflectionPermission = _
            CType(memberAccessPerm.Union(restrictedMemberAccessPerm), ReflectionPermission)
    If reflectionPerm3 Is Nothing Then
        Console.WriteLine("The union of " + memberAccessPerm.Flags.ToString() + " and " + _
        restrictedMemberAccessPerm.Flags.ToString() + " is null.")
    Else
        Console.WriteLine("The union of " + memberAccessPerm.Flags.ToString() + _
        " and " + restrictedMemberAccessPerm.Flags.ToString() + " = " + _
        CType(reflectionPerm3, ReflectionPermission).Flags.ToString())
    End If

End Sub

Commenti

Il risultato di una chiamata a Union è un'autorizzazione che rappresenta tutte le operazioni rappresentate dall'autorizzazione corrente e dall'autorizzazione specificata. Tutte le richieste che superano l'autorizzazione superano l'unione.

Si applica a