ReflectionPermission.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 actual y el permiso especificado.
public:
override System::Security::IPermission ^ Union(System::Security::IPermission ^ other);
public override System.Security.IPermission Union (System.Security.IPermission other);
override this.Union : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Union (other As IPermission) As IPermission
Parámetros
- other
- 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 other
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 ReflectionPermission 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.
private static void UnionDemo()
{
ReflectionPermission memberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess);
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
ReflectionPermission reflectionPerm3 = (ReflectionPermission)memberAccessPerm.Union(restrictedMemberAccessPerm);
if (reflectionPerm3 == null)
{
Console.WriteLine("The union of " + memberAccessPerm.Flags + " and " +
restrictedMemberAccessPerm.Flags + " is null.");
}
else
{
Console.WriteLine("The union of " + memberAccessPerm.Flags + " and " +
restrictedMemberAccessPerm.Flags + " = " +
((ReflectionPermission)reflectionPerm3).Flags.ToString());
}
}
Private Shared Sub UnionDemo()
Dim memberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.MemberAccess)
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
Dim reflectionPerm3 As ReflectionPermission = _
CType(memberAccessPerm.Union(restrictedMemberAccessPerm), ReflectionPermission)
If reflectionPerm3 Is Nothing Then
Console.WriteLine("The union of " + memberAccessPerm.Flags.ToString() + " and " + _
restrictedMemberAccessPerm.Flags.ToString() + " is null.")
Else
Console.WriteLine("The union of " + memberAccessPerm.Flags.ToString() + _
" and " + restrictedMemberAccessPerm.Flags.ToString() + " = " + _
CType(reflectionPerm3, ReflectionPermission).Flags.ToString())
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 y el permiso especificado. Cualquier demanda que pase cualquiera de los permisos pasa su unión.