Freigeben über


ReflectionPermission.Union(IPermission) Methode

Definition

Erstellt eine Berechtigung als Kombination der aktuellen und der angegebenen Berechtigung.

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

Parameter

other
IPermission

Eine Berechtigung, die mit der aktuellen Berechtigung kombiniert werden soll. Sie muss denselben Typ aufweisen wie die aktuelle Berechtigung.

Gibt zurück

IPermission

Eine neue Berechtigung, die die Kombination der aktuellen und der angegebenen Berechtigung darstellt.

Ausnahmen

Der other-Parameter ist nicht null und weist nicht denselben Typ wie die aktuelle Berechtigung auf.

Beispiele

Das folgende Codebeispiel zeigt das Verhalten der Union Methode. In diesem Beispiel wird ein größeres Beispiel für die ReflectionPermission Klasse bereitgestellt.

Hinweis

Das Codebeispiel soll das Verhalten der Methode anzeigen und nicht die Verwendung veranschaulichen. Im Allgemeinen werden die Methoden der Berechtigungsklassen von der Sicherheitsinfrastruktur verwendet; sie werden in der Regel nicht in Anwendungen verwendet.

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

Hinweise

Das Ergebnis eines Aufrufs Union ist eine Berechtigung, die alle Vorgänge darstellt, die durch die aktuelle Berechtigung und die angegebene Berechtigung dargestellt werden. Jede Anforderung, die entweder die Berechtigung übergibt, übergibt ihre Union.

Gilt für