叹一口气。另一天,另一个PowerShell方法与.NET的交互,我就是不明白。这次是签名的XML,但是如何创建一个新的对象是一个问题。
$signedXml = New-Object system.security.cryptography.xml.signedXml -argumentList:$xml工作。但在可能的情况下,我一直在搬到[type]::New()。还有..。$signedXml = [System.Security.Cryptography.Xml.SignedXml]::New($xml)不工作。在剧本里。在ISE中工作很好,但是当作为脚本运行时,我得到
找不到System.Security.Cryptography.Xml.SignedXml类型。
因此,在引擎盖下所发生的事情,使得使用构造函数只在ISE中工作,而New-Object也在脚本中工作。那么,一个人如何去摸索什么会失败呢?我有很多其他的事情,我已经搬到[type]::New(),没有任何问题。当构造函数失败时,我唯一的选择是返回命令吗?在我看来,这会导致代码的一致性和可读性降低。
发布于 2019-11-08 21:21:11
在ISE里我也没用,直到我做了这件事。也许你在ISE中加载了一些模块来做类似的事情。
using assembly system.security发布于 2019-11-08 22:25:30
尝试:
Using namespace System.Security.Cryptography.Xml;Powershell能够调用像C#这样的名称空间。
在Powershell Core中,下面的代码对我来说似乎很好:
Using namespace System.Security.Cryptography.Xml;
$xml = [xml]::New()
$signed = [SignedXml]::New($xml)https://stackoverflow.com/questions/58773762
复制相似问题