System.Transactions.TransactionScope 缺少函数 "new()"

System.Transactions.TransactionScope missing function "new()"

我正在使用 PowerShell 稍微测试一下 AlphaFS。 在我的 Windows 10 dev env 上,这条线运行得很好:

PS C:\Users\Administrator [System.Transactions.TransactionScope]::new([System.Transactions.TransactionScopeOption]::Re
uiresNew)

在 Windows Server 2012 R2 上抛出异常。

Method invocation failed because [System.Transactions.TransactionScope] does not contain a method named 'new'.
At line:1 char:1
+ [System.Transactions.TransactionScope]::new([System.Transactions.TransactionScop ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : MethodNotFound

唯一可以使用的方法是 ::Equals() 和 ::ReferenceEquals()。 我无法获得有关该功能及其所属位置的任何信息。我是否需要安装特定的 .NET Framework 才能使其正常工作?

感谢任何帮助。

::new()静态构造函数调用方法在PowerShell 5.0中首次引入。

Windows Server 2012 R2 附带 PowerShell 4.0

为了兼容 5.0 之前的版本,请改用 New-Object

$transScope = New-Object System.Transactions.TransactionScope -ArgumentList ([System.Transactions.TransactionScopeOption]::RequiresNew)