Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

CodeAccessPermission.Intersect-Methode

Bewirkt, dass bei der Implementierung durch eine abgeleitete Klasse eine Berechtigung, die die Schnittmenge der aktuellen Berechtigung und der angegebenen Berechtigung darstellt, erstellt und zurückgegeben wird.

Namespace:  System.Security
Assembly:  mscorlib (in mscorlib.dll)
public abstract IPermission Intersect(
	IPermission target
)

Parameter

target
Typ: System.Security.IPermission
Eine Berechtigung, deren Schnittmenge mit der aktuellen Berechtigung gebildet wird. Diese muss denselben Typ wie die aktuelle Berechtigung aufweisen.

Rückgabewert

Typ: System.Security.IPermission
Eine neue Berechtigung, die die Schnittmenge der aktuellen und der angegebenen Berechtigung darstellt. Diese neue Berechtigung ist null, wenn die Schnittmenge leer ist.

Implementiert

IPermission.Intersect(IPermission)
AusnahmeBedingung
ArgumentException

Der target-Parameter ist nicht null und keine Instanz der Klasse der aktuellen Berechtigung.

Die Schnittmenge zweier Berechtigungen ist eine Berechtigung, die die von beiden Berechtigungen gemeinsam beschriebene Gruppe von Operationen wiedergibt. Eine Anforderung über die Schnittmenge ist nur erfolgreich, wenn sie beide ursprünglichen Berechtigungen erfolgreich durchläuft.

Hinweise zur Vererbung

Sie müssen diese Methode in einer abgeleiteten Klasse überschreiben.

Im folgenden Codebeispiel wird eine Überschreibung der Intersect-Methode veranschaulicht. Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels, das für die CodeAccessPermission-Klasse bereitgestellt wird.


        public override IPermission Intersect(IPermission target)
        {
            Console.WriteLine ("************* Entering Intersect *********************");
            if (target == null)
            {
                return null;
            }
#if(debug)
            Console.WriteLine ("This is = " + (( NameIdPermission)this).Name);
            Console.WriteLine ("Target is " + (( NameIdPermission)target).m_Name);
#endif
            if (!VerifyType(target))
            {
                throw new ArgumentException (String.Format ("Argument is wrong type.", this.GetType ().FullName));
            }

             NameIdPermission operand = ( NameIdPermission)target;

            if (operand.IsSubsetOf (this)) return operand.Copy ();
            else if (this.IsSubsetOf (operand)) return this.Copy ();
            else
                return null;
        }


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
© 2013 Microsoft. Alle Rechte vorbehalten.