PowerShell中执行.net类库


Powershell脚本一个比较强大的功能是可以直接调用.net类库(ps core能调用.net core类库),除了调用系统类库外,也可以调用自己编写的类库,从而扩充我们脚本的功能。本文这里简单的介绍下如何调用.net类库的方法:

首先我们编写一个简单的函数

namespace ClassLibrary1
{
    public class Class1
    {
        public static void SayHello()
        {
            Console.WriteLine($"hello {DateTime.Now}");
        }
    }
}

将其编译为dll,然后在PowerShell中就可以使用它了。

Add-Type -Path "ClassLibrary1.dll"
[ClassLibrary1.Class1]::SayHello()

powershell中的写法还比较灵活,下面的这个方式也是可以的。

using assembly "ClassLibrary1.dll"
using namespace ClassLibrary1
[Class1]::SayHello()

这个例子比较简单,在PowerSehll中也有更多与.net集成的方法,例如可以使用将代码作为字符串传入,动态编译生成程序集这种更为高级的方式。具体示例可以参考在 PowerShell 中執行 C# 程式碼或 DLL 檔的方法这篇文档。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM