UIPermission.Union(IPermission) Méthode

Définition

Crée une autorisation qui est l’union de l’autorisation actuelle et de l’autorisation spécifiée.

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

Paramètres

target
IPermission

Autorisation à combiner avec l’autorisation actuelle. Elle doit être du même type que l’autorisation actuelle.

Retours

IPermission

Nouvelle autorisation qui représente l’union de l’autorisation actuelle et de l’autorisation spécifiée.

Exceptions

Le paramètre target n’a pas la valeur null et n’est pas du même type que l’autorisation actuelle.

Exemples

L’exemple de code suivant montre le comportement de la Union méthode. Cet exemple fait partie d’un exemple plus grand fourni pour la UIPermission classe.

Notes

L’exemple de code est destiné à afficher le comportement de la méthode, et non à illustrer son utilisation. En général, les méthodes des classes d’autorisation sont utilisées par l’infrastructure de sécurité; elles ne sont généralement pas utilisées dans les applications.

   // 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

Remarques

Le résultat d’un appel est Union une autorisation qui représente toutes les opérations représentées par l’autorisation actuelle ainsi que toutes les opérations représentées par l’autorisation spécifiée. Plus précisément, il représente les valeurs les plus permissives de UIPermissionWindow celles UIPermissionClipboard de l’autorisation actuelle et de l’autorisation spécifiée.

S’applique à