2017-04-19 69 views
2

[System.Uri]::new('http://www.stackoverflow.com')与错误消息失败的System.Uri不包含方法命名为“新”

[的System.Uri]不包含名为“新”

不过我的方法能够在另一个盒子上找到这种方法。并运行良好。

如何寻找是否有PowerShell的

+0

您可以运行** $ PSVersionTable **并验证两种环境的细节吗? –

回答

4

下加载你需要PowerShell的5或更高版本才能使用.NET类的.ctor系统对象之间的差异。 在旧版本的Powershell中,您将不得不使用New-Object来执行此操作。

+0

@wOxxOm:刚刚在Server2012R2机器(PS4)上测试过,新的构造函数在那里不起作用。 – bluuf

+0

这很有趣。显然,WPF5升级了整个PS环境,所以这些构造函数也在'powershell -version 3'会话中工作。 IIRC我甚至在安装PS5之前在PS4中成功地使用了':: new()',因此它可能与.NET框架相关。无论如何,它本身并不是PowerShell 5的一个特性,因为否则它不应该在'-version 3'会话中工作(或者它是一个错误?)。 – wOxxOm

+1

@wOxxOm在WMF 5盒子上的'powershell -version 3'是一种错觉:-)看看'$ PSVersionTable' –

相关问题