0

コマンドレット (および/または PSCmdlet) を使用して、作成できます

[Cmdlet(VerbsCommunications.Read, "Blah", SupportsShouldProcess = true)]
public class BlahBlah : PSCmdlet
{
  /// ...
}

次に、powershell でコマンドを呼び出すことができます

import-module .\Blah.dll -Verbose
Read-Blah
...

そして、すべてが順調です。

しかし、オブジェクトを取得してpowershellで使用できるように、関数ではなくクラスを作成したいと思います

何かのようなもの

import-module .\Blah.dll -Verbose
$myClass = New-Object Blah
$myClass.Read
$myClass.Save -File x.txt
$myClass.BlahBlah
...

上記はC#でできますか?もしそうなら、どのように?

4

1 に答える 1

1

.NET アセンブリからクラスをインポートする場合は、 ではなく を使用する必要がありAdd-TypeますImport-Module

Add-Type -Path .\Blah.dll

この時点で、アセンブリで定義されているすべてのパブリック クラスが PowerShell から利用できるようになります。

于 2016-07-01T06:52:52.630 に答える