Esporta (0) Stampa
Espandi tutto

Metodo UIPermission.IsSubsetOf

Aggiornamento: novembre 2007

Determina se l'autorizzazione corrente è un sottoinsieme dell'autorizzazione specificata.

Spazio dei nomi:  System.Security.Permissions
Assembly:  mscorlib (in mscorlib.dll)

public override bool IsSubsetOf(
	IPermission target
)
public boolean IsSubsetOf(
	IPermission target
)
public override function IsSubsetOf(
	target : IPermission
) : boolean

Parametri

target
Tipo: System.Security.IPermission

Autorizzazione da sottoporre a verifica per la relazione del sottoinsieme. Questa autorizzazione deve essere dello stesso tipo dell'autorizzazione corrente.

Valore restituito

Tipo: System.Boolean

true se l'autorizzazione corrente è un sottoinsieme dell'autorizzazione specificata; in caso contrario, false.

Implementa

IPermission.IsSubsetOf(IPermission)

EccezioneCondizione
ArgumentException

Il parametro target non è null ed è di un tipo diverso rispetto all'autorizzazione corrente.

L'autorizzazione corrente è un sottoinsieme dell'autorizzazione specificata se tutte le richieste soddisfatte per l'autorizzazione corrente vengono soddisfatte anche per l'autorizzazione specificata. Ovvero, l'autorizzazione specificata contiene almeno le autorizzazioni contenute nel sottoinsieme. Affinché IsSubsetOf restituisca true, entrambi i valori UIPermissionWindow e UIPermissionClipboard dell'autorizzazione corrente devono essere uguali o più restrittivi dei valori dell'autorizzazione specificata.

Nell'esempio di codice riportato di seguito viene illustrato il comportamento del metodo IsSubsetOf. Questo esempio fa parte di un esempio più esaustivo fornito per la classe UIPermission.

Nota:

Nell'esempio di codice viene illustrato il comportamento del metodo, non il suo utilizzo. In generale, i metodi delle classi di autorizzazioni vengono utilizzati dall'infrastruttura di sicurezza e non vengono di solito utilizzati nelle applicazioni.

// IsSubsetOf determines whether the current permission is a subset of the specified permission.
private static void IsSubsetOfDemo()
{
    UIPermission uiPerm1 = new UIPermission(UIPermissionWindow.SafeTopLevelWindows);
    UIPermission uiPerm2 = new UIPermission(UIPermissionWindow.SafeSubWindows);
    CheckIsSubsetOfWindow(uiPerm1, uiPerm2);
    uiPerm1 = new UIPermission(UIPermissionClipboard.AllClipboard);
    uiPerm2 = new UIPermission(UIPermissionClipboard.OwnClipboard);
    CheckIsSubsetOfClipBoard(uiPerm1, uiPerm2);
}
private static void CheckIsSubsetOfWindow(UIPermission uiPerm1, UIPermission uiPerm2)
{
    if (uiPerm1.IsSubsetOf(uiPerm2))
    {
        Console.WriteLine(uiPerm1.Window.ToString() + " is a subset of " +
            uiPerm2.Window.ToString());
    }
    else
    {
        Console.WriteLine(uiPerm1.Window.ToString() + " is not a subset of " +
            uiPerm2.Window.ToString());

    }
    if (uiPerm2.IsSubsetOf(uiPerm1))
    {
        Console.WriteLine(uiPerm2.Window.ToString() + " is a subset of " +
            uiPerm1.Window.ToString());
    }
    else
    {
        Console.WriteLine(uiPerm2.Window.ToString() + " is not a subset of " +
            uiPerm1.Window.ToString());

    }
}
private static void CheckIsSubsetOfClipBoard(UIPermission uiPerm1, UIPermission uiPerm2)
{
    if (uiPerm1.IsSubsetOf(uiPerm2))
    {
        Console.WriteLine(uiPerm1.Clipboard.ToString() + " is a subset of " +
            uiPerm2.Clipboard.ToString());
    }
    else
    {
        Console.WriteLine(uiPerm1.Clipboard.ToString() + " is not a subset of " +
            uiPerm2.Clipboard.ToString());

    }
    if (uiPerm2.IsSubsetOf(uiPerm1))
    {
        Console.WriteLine(uiPerm2.Clipboard.ToString() + " is a subset of " +
            uiPerm1.Clipboard.ToString());
    }
    else
    {
        Console.WriteLine(uiPerm2.Clipboard.ToString() + " is not a subset of " +
            uiPerm1.Clipboard.ToString());

    }
}


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0, 1.1, 1.0

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft