CodeAccessPermission.Union(IPermission) Método

Definição

Quando substituído em uma classe derivada, cria uma permissão que é a união entre a permissão atual e a permissão especificada.

public virtual System.Security.IPermission Union (System.Security.IPermission other);

Parâmetros

other
IPermission

Uma permissão a ser combinada com a permissão atual. Ele deve ser do mesmo tipo da permissão atual.

Retornos

Uma nova permissão que representa a união da permissão atual e da permissão especificada.

Implementações

Exceções

O parâmetro other não é null. Esse método é compatível com este nível apenas quando passar null.

Exemplos

O exemplo de código a seguir mostra uma substituição do Union método . Este exemplo de código faz parte de um exemplo maior fornecido para a CodeAccessPermission classe .

        public override IPermission Union(IPermission target)
        {
#if(debug)
            Console.WriteLine ("************* Entering Union *********************");
#endif
            if (target == null)
            {
                return this;
            }
#if(debug)
            Console.WriteLine ("This is = " + (( NameIdPermission)this).Name);
            Console.WriteLine ("Target is " + (( NameIdPermission)target).m_Name);
#endif
            if (!VerifyType(target))
            {
                throw new ArgumentException (String.Format ("Argument_WrongType", this.GetType ().FullName));
            }

             NameIdPermission operand = ( NameIdPermission)target;

            if (operand.IsSubsetOf (this)) return this.Copy ();
            else if (this.IsSubsetOf (operand)) return operand.Copy ();
            else
                return null;
        }

Comentários

O resultado de uma chamada para Union é uma permissão que representa todas as operações representadas pela permissão atual e pela permissão especificada. Qualquer exigência que passe qualquer permissão passa por sua união.

Notas aos Herdeiros

Você deve substituir esse método em uma classe derivada. Você deverá retornar uma cópia da permissão se o valor do other parâmetro for null.

Aplica-se a

Produto Versões
.NET 6 (package-provided), 7 (package-provided), 8 (package-provided), 9 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9