Condividi tramite


PrincipalPermission.Intersect(IPermission) Metodo

Definizione

Crea e restituisce un'autorizzazione che rappresenta l'intersezione tra l'autorizzazione corrente e quella specificata.

public:
 virtual System::Security::IPermission ^ Intersect(System::Security::IPermission ^ target);
public System.Security.IPermission Intersect (System.Security.IPermission target);
abstract member Intersect : System.Security.IPermission -> System.Security.IPermission
override this.Intersect : System.Security.IPermission -> System.Security.IPermission
Public Function Intersect (target As IPermission) As IPermission

Parametri

target
IPermission

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

Restituisce

Nuova autorizzazione che rappresenta l'intersezione dell'autorizzazione corrente e di quella specificata. La nuova autorizzazione sarà null se l'intersezione è vuota.

Implementazioni

Eccezioni

Il parametro target non è null e non è un'istanza della stessa classe dell'autorizzazione corrente.

Commenti

Poiché due utenti non si intersecano mai, questo metodo non è utile per PrincipalPermission. Ad esempio,

PrincipalPermission^ ppBob = gcnew PrincipalPermission("Bob", "Administrator");
PrincipalPermission^ ppLouise = gcnew PrincipalPermission("Louise", "Administrator");
IPermission^ pp1 = ppBob->Intersect(ppLouise);
PrincipalPermission ppBob = new PrincipalPermission("Bob", "Administrator");
PrincipalPermission ppLouise = new PrincipalPermission("Louise", "Administrator");
IPermission pp1 = ppBob.Intersect(ppLouise);
Dim ppBob As New PrincipalPermission("Bob", "Administrator")
Dim ppLouise As New PrincipalPermission("Louise", "Administrator")
Dim pp1 As IPermission = ppBob.Intersect(ppLouise)

equivale a

IPermission^ pp1 = gcnew PrincipalPermission("", "Administrator");
IPermission pp1 = new PrincipalPermission("", "Administrator");
Dim pp1 As IPermission = New PrincipalPermission("", "Administrator")

perché nessuna identità può rappresentare simultaneamente Sia Bob che Louise. In effetti, pp1.Demand() solo se un'entità non autenticata (con nome uguale alla stringa vuota ("")) può agire nel ruolo Amministratore.

Si applica a