在我的 Powershell“项目”中,我希望将所有常见的 Enum 放在一个文件中,然后从其他各种脚本中引用该文件。
我已经尝试对文件进行点源,并尝试将 Enum 文件转换为 psm1(导入模块),但到目前为止我没有尝试过任何工作。
例如,枚举文件 datatypes.ps1 看起来像这样:
Enum DataType { String, Integer, Boolean }
我试图像这样包含它:
. ".\datatypes.ps1"
class MyClass {
[DataType]$Type = [DataType]::String
}
当我运行上述内容时,我收到错误消息:
找不到类型 [DataType]。
我以前使用点源来包含变量和函数,这些总是有效的。但是现在枚举拒绝工作:(
点源应该起作用吗?模块方法应该起作用吗?还是枚举必须位于同一个文件/脚本中?
编辑:
我想我可能已经发现了问题,似乎在包含包含之前脚本已被完全解析,这可能是问题吗?