UIPermission.Union(IPermission) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un permiso que es la unión del permiso y el permiso especificado.
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
Parámetros
- target
- IPermission
Permiso para combinar con el permiso actual. Debe ser del mismo tipo que el permiso actual.
Devoluciones
Nuevo permiso que representa la unión del permiso actual y el permiso especificado.
Excepciones
El parámetro target
no es null
y no es del mismo tipo que el permiso actual.
Ejemplos
En el ejemplo de código siguiente se muestra el comportamiento del Union método . Este ejemplo forma parte de un ejemplo más grande proporcionado para la UIPermission clase .
Nota
El ejemplo de código está pensado para mostrar el comportamiento del método, no para demostrar su uso. En general, la infraestructura de seguridad utiliza los métodos de las clases de permisos; normalmente no se usan en aplicaciones.
// 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
Comentarios
El resultado de una llamada a Union es un permiso que representa todas las operaciones representadas por el permiso actual, así como todas las operaciones representadas por el permiso especificado. En concreto, representa los valores más permisivos de UIPermissionWindow y UIPermissionClipboard de los del permiso actual y el permiso especificado.