中文 | English
你们的反馈是我的动力,文档还有很多不足之处;
当你看完文档之后仍然不知道如何实现你的需求,可以在issue中提出你的需求。
基于roslyn的动态编译库,为您提供高效率、高性能、可追踪的动态构建方案,兼容stanadard2.0, 只需原生C#语法不用Emit。 让您的动态方法更加容易编写、跟踪、维护。 欢迎参与讨论:点击加入Gitter讨论组
Scan Name | Status |
---|---|
Document | |
Lang | |
Rumtime | |
OS |
CI Platform | Build Server | Master Build | Master Test |
---|---|---|---|
Travis | Linux/OSX | ||
AppVeyor | Windows/Linux | ||
Azure | Windows | ||
Azure | Linux | ||
Azure | Mac |
Teng(359768998@qq.com)
WeihanLi
- 2019-08-07 : 发布v1.3.0.0,增加NewClass\NewStruct\NewInterface静态操作类,增加NewMethod静态操作类。
- 2019-08-09 : 发布v1.3.2.0,支持非安全方法编译,函数支持Unsafe方法。
- 2019-08-11 : 发布v1.3.4.0,增加NFunc/NAction方法, 可快速动态构建方法。
- 2019-08-16 : 发布v1.3.6.0,添加枚举构建及编译方法, 日志添加一级 “时分” 目录。
- 2019-09-01 : 发布v2.0.0.0,支持共享域协作,支持创建、卸载、锁域操作,支持多程序集合并编译、覆盖编译,支持外部文件热加载,封装字符串解构操作。
更多更新的参考文档:https://natasha.dotnetcore.xyz/
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.2</TargetFramework>
<PreserveCompilationContext>true</PreserveCompilationContext> <--- 一定要加上这句话
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish> <---- WEB发布一定要加
</PropertyGroup>
Natasha的动态调用模块: 已移至【NCaller】
Natasha的动态调用模块: 已移至【DeepClone】
-
测试计划(等待下一版本bechmark):
- 动态函数性能测试(对照组: emit, origin)
- 动态调用性能测试(对照组: 动态直接调用,动态代理调用,emit, origin)
- 动态克隆性能测试(对照组: origin)
- 远程动态封装函数性能测试(对照组: 动态函数,emit, origin)