无法在 PowerShell 中找到类型 [System.Web.HttpUtility]

Unable to find type [System.Web.HttpUtility] in PowerShell

我正在尝试使用 PowerShell 获取 Microsoft Translator 应用程序的访问令牌,但过程中的某些命令因错误而失败:

Unable to find type [System.Web.HttpUtility]

在收到此错误之前,我将 this MSDN page 中的代码复制并粘贴到 PowerShell ISE 中,并将占位符值替换为我的实际凭据:

# ...
$ClientID = '<Your Value Here From Registered Application>'
$client_Secret = ‘<Your Registered Application client_secret>'

# If ClientId or Client_Secret has special characters, UrlEncode before sending request
$clientIDEncoded = [System.Web.HttpUtility]::UrlEncode($ClientID)
$client_SecretEncoded = [System.Web.HttpUtility]::UrlEncode($client_Secret)
# ...

我需要添加什么额外的代码才能让它工作?

您需要加载 System.Web 程序集。像这样使用 Add-Type cmdlet,

PS C:\> [System.Web.HttpUtility]::UrlEncode("www.google.com")
Unable to find type [System.Web.HttpUtility].

PS C:\> Add-Type -AssemblyName System.Web
PS C:\> [System.Web.HttpUtility]::UrlEncode("www.google.com")
www.google.com