我正在尝试创建一个.NET标准2.0库,该库使用PowerShell类(System.Management.Automation(调用PowerShell命令和脚本。我想在.NET框架(4.7.2(项目中使用此.NET标准库。
我已经尝试在.NET标准项目中使用Microsoft.PowerShell.SDK
和System.Management.Automation
Nuget软件包,但我一直在遇到此错误:
system.io.fileleloadexception
HResult=0x80131040
Message=Could not load file or assembly'System.Management.Automation, Version=6.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
.NET标准2.0库项目中的示例代码:
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
PowerShell posh = PowerShell.Create();
posh.Runspace = runspace;
我该如何实现?任何帮助都将不胜感激。
如果要定位.NET标准,则应参考PowerShellStandard.Library
Nuget软件包
PowerShell标准仅揭示PowerShell 5.1(.NET Framework(和PowerShell Core(.NET Core(之间重叠的API表面,因此无论您对哪个版本进行编译。
,它都可以工作。推荐阅读:PowerShell标准库:构建跨Windows PowerShell和PowerShell Core