C# 无法从';获取Windows OptionalFeature';在模块';Dism&x27;,但无法加载该模块

C# 无法从';获取Windows OptionalFeature';在模块';Dism&x27;,但无法加载该模块,c#,powershell,C#,Powershell,我试图从我的c#应用程序执行以下PowerShell命令 $check = Get-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 if ($check.Installed -eq 'False') { Enable-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 } 但当我运行此命令时,PowerShell会引发以下异

我试图从我的c#应用程序执行以下PowerShell命令

$check = Get-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45
if ($check.Installed -eq 'False') {
    Enable-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45
}
但当我运行此命令时,PowerShell会引发以下异常:

在模块“Dism”中找到“Get-WindowsOptionalFeature”命令,但无法加载该模块。有关详细信息,请运行“导入模块Dism”

但是,当我从PowerShell窗口运行相同的脚本时,它工作得很好。我的问题的根源是什么?我的操作系统是Windows 10

PowerShell版本:5-1-14393-953

C#代码:


尝试在脚本中包含“导入模块Dism”,如下所示:

const string psScript = @"Import-Module Dism; $check = Get-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 if ($check.Installed -eq 'False') { Enable-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 };";

虽然情况可能是这样,但它在引发该问题的机器上不起作用。它在我的机器上运行得很好,但我们有一台Windows 10机器无法运行该脚本。我猜我的Windows机器上少了一个模块。或者某个地方的模块坏了。但为什么它在PowerShell命令行应用程序上运行良好,但在C#中显示此错误?是的,可能是您没有安装模块。试着在你的win10机器上安装。你有什么解决方案吗?
const string psScript = @"Import-Module Dism; $check = Get-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 if ($check.Installed -eq 'False') { Enable-WindowsOptionalFeature -Online -FeatureName WCF-HTTP-Activation45 };";