我使用PS 4.0,我有一个带有函数参数枚举的脚本。
Add-Type -TypeDefinition @"
public enum AppEnum
{
MyFirstItem,
MySecondItem
}
"@
我这样用:
Function MyFunction
{
Param
(
[AppEnum]$App
)
Return $App
}
但我的枚举列表与我的XML文件相同,可以修改。
我像这样检索我的列表:
($xcf.Apps.W2008.LAN | Get-Member -MemberType Properties).Name | ?{$_ -ne "Repository"}
我想使用从我的XML文件中提取的动态列表作为“添加类型”中枚举的列表,但我不知道如何以及我不知道是否可能。你知道怎么做吗?
答案 0 :(得分:1)
# Get list from your XML file here
$myEnumList = @("MyFirstItem", "MySecondItem")
$source = "public enum AppEnum { " + ($myEnumList | %{ $_ + "," }) + " }"
Add-Type -TypeDefinition $source
# Let's check value is known
[AppEnum]::MyFirstItem