Modificando Propriedades com Valores Múltiplos

 

Aplica-se a: Exchange Server 2010 SP2, Exchange Server 2010 SP3

Tópico modificado em: 2015-03-09

Este tópico explica como usar o Shell de Gerenciamento do Exchange para adicionar e remover valores de uma propriedade com valores múltiplos em um objeto.

Visão geral da propriedade com valores múltiplos

Uma propriedade com valores múltiplos é uma propriedade que pode conter mais de um valor. Por exemplo, a propriedade BlockedRecipients no objeto RecipientFilterConfig pode aceitar vários endereços de destinatários como nos exemplos a seguir

  • John@contoso.com

  • Kim@northwindtraders.com

  • David@adatum.com

Como a propriedade BlockedRecipients pode aceitar mais de um valor, é chamada de propriedade de valor múltiplo.

Para obter mais informações sobre objetos, consulte Dados Estruturados.

Modificando uma Propriedade de Valor Múltiplo vs. Modificando uma Propriedade que Aceita Somente um Único Valor

Modificar uma propriedade com valores múltiplos é ligeiramente diferente de como modificar uma propriedade que aceita apenas um valor. Ao modificar uma propriedade que aceita apenas um valor, é possível atribuir um valor diretamente a ela, como no seguinte comando:

Set-TransportConfig -MaxSendSize 12MB

Quando você usa esse comando para fornecer um novo valor à propriedade MaxSendSize, o valor armazenado é sobrescrito. Isso não é um problema com propriedades que aceitam um único valor. Entretanto, ele se torna um problema com propriedades com valores múltiplos. Por exemplo, suponha que a propriedade BlockedRecipients no objeto RecipientFilterConfig esteja configurada para ter os três valores listados na seção anterior. Ao executar o comando Get-RecipientFilterConfig | Format-List BlockedRecipients, o seguinte é exibido:

BlockedRecipients : {david@adatum.com, kim@northwindtraders.com, john@contoso.com}

Agora, suponha que você recebeu um pedido para adicionar um novo endereço SMTP (Simple Mail Transfer Protocol) à lista de destinatários bloqueados. Você executa o seguinte comando para adicionar o novo endereço SMTP:

Set-RecipientFilterConfig -BlockedRecipients chris@contoso.com

Ao executar o comando Get-RecipientFilterConfig | Format-List BlockedRecipients novamente, você verá o seguinte:

BlockedRecipients : {chris@contoso.com}

Isso não era o que você esperava. Você desejava adicionar o novo endereço SMTP à lista existente de destinatários bloqueados, mas, em vez disso, a lista existente de destinatários bloqueados foi sobrescrita pelo novo endereço SMTP. Isso exemplifica resultados indesejados como modificar uma propriedade com valores múltiplos difere de modificar uma propriedade que aceita apenas um único valor. Ao modificar uma propriedade com valores múltiplos, você deve se assegurar de anexar ou remover valores, em vez de sobrescrever a lista inteira de valores. As seções a seguir mostram como fazer exatamente isso.

Dica

Alguns cmdlets, como Set-TransportRule, não aceitam modificar propriedades em objetos da maneira descrita neste tópico. Para obter mais informações sobre como adicionar e remover valores de propriedades com valores múltiplos desses cmdlets, consulte os tópicos desses cmdlets, como Set-TransportRule.

Modificando Propriedades com Valores Múltiplos

Modificar propriedades com valores múltiplos é semelhante a modificar propriedades de valor único. Basta você adicionar algumas sintaxes adicionais para mandar o Shell que você deseja adicionar ou remover valores de ou para a propriedade de valor múltiplo em vez de substituir tudo o que está armazenado na propriedade. A sintaxe é incluída, juntamente com o valor ou valores para adicionar ou remover para ou da propriedade, como um valor em um parâmetro quando executar um cmdlet. A tabela a seguir mostra a sintaxe que você precisa adicionar a um parâmetro em um cmdlet para modificar as propriedades de valor múltiplo.

Sintaxe de propriedade de vários valores

Action Sintaxe

Adicionar um ou mais valores de uma propriedade com valores múltiplos

@{Add="<value1>", "<value2>", "<value3>"}

Remover um ou mais valores de uma propriedade com valores múltiplos

@{Remove="<value1>", "<value2>", "<value3>"}

A sintaxe que você escolher da tabela de sintaxe de propriedade de valor múltiplo é especificada como um valor do parâmetro em um cmdlet. Por exemplo, o comando a seguir adiciona vários valores para uma propriedade com valores múltiplos:

Set-ExampleCmdlet -Parameter @{Add="Red", "Blue", "Green"}

Quando você usar esta sintaxe, os valores que você especificar serão adicionados ou removidos da lista de valores já presente na propriedade. Pegando o exemplo anterior de BlockedRecipients neste tópico, podemos agora adicionar chris@contoso.com sem substituir os valores restantes nesta propriedade utilizando o comando a seguir:

Set-RecipientFilterConfig -BlockedRecipients @{Add="chris@contoso.com"}

Se você deseja remover david@adatum.com da lista de valores, você pode utilizar este comando:

Set-RecipientFilterConfig -BlockedRecipients @{Remove="david@adatum.com"}

Combinações mais complexas podem ser utilizadas, como adicionar ou remover valores de e para uma propriedade ao mesmo tempo. Para fazê-lo, insira um ponto e vírgula ( ; ) entre Add e Remove ações. Por exemplo:

Set-RecipientFilterConfig -BlockedRecipients @{Add="carter@contoso.com", "sam@northwindtraders.com", "brian@adatum.com"; Remove="john@contoso.com"}

Se usarmos o comando Get-RecipientFilterConfig | Format-List BlockedRecipients novamente, podemos ver que o endereço de email para Carter, Sam e Brian foram adicionados enquanto o endereço de John foi removido.

BlockedRecipients : {brian@adatum.com, sam@northwindtraders.com, carter@contoso.com, chris@contoso.com, kim@northwindtraders.com}