Partilhar via


Acerca da Utilização

BREVE DESCRIÇÃO

Permite indicar que espaços de nomes são utilizados na sessão.

DESCRIÇÃO LONGA

A using instrução permite-lhe especificar que espaços de nomes são utilizados na sessão. Adicionar espaços de nomes simplifica a utilização de classes .NET e membro e permite-lhe importar classes de módulos.

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

Syntax

Para referenciar .NET Framework espaços de nomes:

using namespace <.NET-framework-namespace>

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

using module <module-name>

Nota

Import-Module e a #requires instrução só importa as funções, aliases e 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 seguinte obtém o hash criptográfico para a cadeia “Hello World”.

Tenha em atenção como as using namespace System.Text e using namespace System.IO simplificam as referências para [UnicodeEncoding] dentro System.Text e para dentro e [Stream] para [MemoryStream] em 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 seguinte pressupõe que um módulo com o nome "CardGames" foi carregado automaticamente.

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

  • Deck
  • 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)