UIPermission.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 ^ target);
public override System.Security.IPermission Union (System.Security.IPermission target);
override this.Union : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Union (target As IPermission) As IPermission

Parametri

target
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 target 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 UIPermission 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.

   // Union creates a new permission that is the union of the current permission
   // and the specified permission.
void UnionDemo()
{
    Console::WriteLine("\n************************  Union() Demo *************************\n");

    UIPermission ^ uiPerm1 = gcnew UIPermission(UIPermissionWindow::SafeTopLevelWindows);
    UIPermission ^ uiPerm2 = gcnew UIPermission(UIPermissionWindow::SafeSubWindows);

    UIPermission ^ p3 = dynamic_cast<UIPermission^>(uiPerm1->Union(uiPerm2));
    Console::WriteLine("   The union of {0} and  \n\t{1} = {2} ", uiPerm1->Window,
                               uiPerm2->Window, (nullptr != p3)?p3->Window.ToString():"null");
}
// Union creates a new permission that is the union of the current permission
// and the specified permission.
private static void UnionDemo()
{
    UIPermission uiPerm1 = new UIPermission(UIPermissionWindow.SafeTopLevelWindows);
    UIPermission uiPerm2 = new UIPermission(UIPermissionWindow.SafeSubWindows);
    UIPermission p3 = (UIPermission)uiPerm1.Union(uiPerm2);
    if (p3 != null)
    {
        Console.WriteLine("The union of " + uiPerm1.Window.ToString() +
            " and \n\t" + uiPerm2.Window.ToString() + " is \n\t"
            + p3.Window.ToString() + "\n");
    }
    else
    {
        Console.WriteLine("The union of " + uiPerm1.Window.ToString() +
            " and \n\t" + uiPerm2.Window.ToString() + " is null.\n");
    }
}
' Union creates a new permission that is the union of the current permission
' and the specified permission.
Private Shared Sub UnionDemo()
    Dim uiPerm1 As New UIPermission(UIPermissionWindow.SafeTopLevelWindows)
    Dim uiPerm2 As New UIPermission(UIPermissionWindow.SafeSubWindows)
    Dim p3 As UIPermission = CType(uiPerm1.Union(uiPerm2), UIPermission)
    If Not (p3 Is Nothing) Then
        Console.WriteLine("The union of " + uiPerm1.Window.ToString() + " and " + vbLf + vbTab + uiPerm2.Window.ToString() + " is " + vbLf + vbTab + p3.Window.ToString() + vbLf)

    Else
        Console.WriteLine("The union of " + uiPerm1.Window.ToString() + " and " + vbLf + vbTab + uiPerm2.Window.ToString() + " is null." + vbLf)
    End If

End Sub

Commenti

Il risultato di una chiamata a Union è un'autorizzazione che rappresenta tutte le operazioni rappresentate dall'autorizzazione corrente, nonché tutte le operazioni rappresentate dall'autorizzazione specificata. In particolare, rappresenta i valori più permissivi di UIPermissionWindow e UIPermissionClipboard da quelli nell'autorizzazione corrente e l'autorizzazione specificata.

Si applica a