Compartilhar via


Sobre o uso

DESCRIÇÃO BREVE

Permite indicar quais namespaces são usados na sessão.

DESCRIÇÃO LONGA

A using instrução permite que você especifique quais namespaces são usados na sessão. A adição de namespaces simplifica o uso de classes e membros do .NET e permite que você importe classes de módulos.

A using instrução precisa ser a primeira instrução no script.

Sintaxe

Para fazer referência a namespaces do .NET Framework:

using namespace <.NET-framework-namespace>

Para fazer referência a módulos do PowerShell:

using module <module-name>

Observação

Import-Module e a instrução #requires importam apenas as funções, os aliases e as variáveis do módulo, conforme definido pelo módulo. As classes não são importadas. A using module instrução importa as classes definidas no módulo. Se o módulo não for carregado na sessão atual, a using instrução falhará.

Exemplos

O script a seguir obtém o hash criptográfico da cadeia de caracteres "Olá, Mundo".

Observe como o using namespace System.Text e using namespace System.IO simplificam as referências a [UnicodeEncoding] in System.Text e [Stream] e a [MemoryStream] in System.IO.

using namespace System.Text
using namespace System.IO

[string]$string = "Hello World"
## Valid values are "SHA1", "SHA256", "SHA384", "SHA512", "MD5"
[string]$algorithm = "SHA256"

[byte[]]$stringbytes = [UnicodeEncoding]::Unicode.GetBytes($string)

[Stream]$memorystream = [MemoryStream]::new($stringbytes)
$hashfromstream = Get-FileHash -InputStream $memorystream `
  -Algorithm $algorithm
$hashfromstream.Hash.ToString()

O script a seguir pressupõe que um módulo chamado 'CardGames' foi carregado automaticamente.

As seguintes classes são definidas no módulo:

  • Apresentação
  • Cartão
using module CardGames

[Deck]$deck = [Deck]::new()
$deck.Shuffle()
[Card[]]$hand1 = $deck.Deal(5)
[Card[]]$hand2 = $deck.Deal(5)
[Card[]]$hand3 = $deck.Deal(5)