如何将字符串转换为枚举?

flo*_*oat 4 powershell enums

我正在尝试在 PowerShell 中将字符串转换为枚举值,但在任何地方都找不到它...

我得到一个 JSON 结果,我只想使用定义为字符串的 Healthstate。

enum HealthState
{
    Invalid = 0
    Ok = 1
    Warning = 2
    Error = 3
    Unknown = 65535
}
$jsonResult = "Ok"
$HealthStateResultEnum = [Enum]::ToObject([HealthState], $jsonResult) 
Run Code Online (Sandbox Code Playgroud)

提前致谢。

Mar*_*agg 5

您可以简单地将字符串结果转换为 Enum 类型:

$HealthStateResultEnum = [HealthState]$jsonResult
Run Code Online (Sandbox Code Playgroud)

无论是否$jsonResult包含来自枚举类型的字符串或值,这都将起作用。