中文 | English
你们的反馈是我的动力,文档还有很多不足之处;
当你看完文档之后仍然不知道如何实现你的需求,您可以查看 FAQ 或者在issue中提出你的需求。
Natasha
基于 Roslyn 的动态编译库,为您提供高效率、高性能、可追踪的动态构建方案,兼容 stanadard2.0/netcoreapp3.0+ , 只需原生C#语法不用Emit, 更多的动图展示。 让您的动态方法更加容易编写、跟踪、维护。
类库信息(Library Info)
Scan Name | Status |
---|---|
Document | |
Lang | |
OS | |
Rumtime |
持续构建(CI Build Status)
CI Platform | Build Server | Master Build | Master Test |
---|---|---|---|
Github | linux/mac/windows | ||
Azure | Windows | ||
Azure | Linux | ||
Azure | Mac |
使用方法(User Api):
-
引入 动态构建库: DotNetCore.Natasha
-
引入 编译环境库: DotNetCore.Compile.Environment
-
向引擎中注入定制的域: DomainManagement.RegisterDefault< AssemblyDomain >()
-
敲代码
更多更新的参考文档:https://natasha.dotnetcore.xyz/
发布日志
-
2020-03-12 : 发布v2.12.0.0, 增加新API NDelegate.XXX.Delegate() 系列API, Field模板构建增加了一个参数 int? fieldoffset。
-
2020-03-16 : 发布v2.14.0.0, 为 RuntimeToDynamic 库优化些API ,NDelegate 类使用 Using 模板来提供命名空间预定义的操作, 方便提前定制命名空间;新增域、命名空间关联模板 NHandler 以便提供与当前信息相同的 delegate / class / interface / enum / struct 操作类;增加 ALink 抽象类约束,以便约束不带有功能的 Link 操作。
-
2020-05-01 : 发布v3.0.0.0, 重构所有模块,上层API几乎没变,底层可以继承重写,移除部分 API。
-
2020-05-06 : 发布v3.0.2.0, 修复 修饰符模板状态机BUG, 增加 语法树选项 ForceAddSyntax 不管对错强制添加语法树。
-
2020-05-12 : 发布v3.2.0.0,增加插件自动装载 using 的功能,修复部分字段命名,Domain 部分抽象实现将在 AssemblyDomain 中实现,增加 GetPluginAssembies 抽象方法以返回插件带来的程序集,需要子类实现。
性能测试
Wiki审核
Teng(359768998@qq.com)
代码审核
WeihanLi
升级日志
生态微信群
为防止广告*扰,微信群已关闭,进群请发送您的微信号到 2765968624@qq.com 并说明进群原因。 如果未及时处理,请在 issue 中提醒我,QQ我平时不上了。 (发广告的先死个妈)