关于使用

简短说明

允许指示会话中使用的命名空间。

详细说明

语句 using 允许指定会话中使用的命名空间。 添加命名空间可简化 .NET 类和成员的使用,并允许从模块导入类。

语句 using 必须是脚本中的第一个语句。

语法

引用.NET Framework命名空间:

using namespace <.NET-framework-namespace>

若要引用 PowerShell 模块,请执行以下操作:

using module <module-name>

注意

Import-Module#requires和 语句仅导入模块定义的模块函数、别名和变量。 不会导入类。 语句 using module 导入模块中定义的类。 如果模块未在当前会话中加载,则 using 语句将失败。

示例

以下脚本获取“Hello World”字符串的加密哈希。

请注意 和 using namespace System.Textusing namespace System.IO 如何简化 中 System.Text[Stream] 中对 [MemoryStream] 和 的System.IO引用[UnicodeEncoding]

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()

以下脚本假定自动加载名为“CardGames”的模块。

模块中定义了以下类:

  • 幻灯片组
  • 卡片
using module CardGames

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