如何继续在【抬杠.NET】平台进行IL代码的深入开发?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1099个文字,预计阅读时间需要5分钟。
背景:之前写了一篇关于.NET的文章,介绍了如何进行IL代码的开发,并介绍了几种IL代码的开发方式。
正文:创建IL项目+C
背景之前写了一篇文 如何进行IL代码的开发 介绍了几种IL代码的开发方式。
- 创建IL项目
- C#项目混合编译IL
- 使用InlineIL.Fody
- 使用DynamicMethod(ILGenerator)
我个人比较喜欢IL和C#在同一个项目的方式(毕竟单单为了一点点IL代码新建一个IL项目也挺麻烦的),所以一直在用InlineIL.Fody。后来在使用过程中发现了一些它的限制,而如果转而使用混合编译的方式呢,又无法对C#代码进行debug了(因为最终的pdb文件实际上是根据IL源码生成的)。
因此,我使用Fody编写了一个插件,叫做MixedIL.Fody,彻底解决了这些问题。
以AssemblyKeyNameAttribute为例,这是.Net类库里的一个特性。它有个无公共setter的属性Name,那么如何为这个属性赋值呢。
本文共计1099个文字,预计阅读时间需要5分钟。
背景:之前写了一篇关于.NET的文章,介绍了如何进行IL代码的开发,并介绍了几种IL代码的开发方式。
正文:创建IL项目+C
背景之前写了一篇文 如何进行IL代码的开发 介绍了几种IL代码的开发方式。
- 创建IL项目
- C#项目混合编译IL
- 使用InlineIL.Fody
- 使用DynamicMethod(ILGenerator)
我个人比较喜欢IL和C#在同一个项目的方式(毕竟单单为了一点点IL代码新建一个IL项目也挺麻烦的),所以一直在用InlineIL.Fody。后来在使用过程中发现了一些它的限制,而如果转而使用混合编译的方式呢,又无法对C#代码进行debug了(因为最终的pdb文件实际上是根据IL源码生成的)。
因此,我使用Fody编写了一个插件,叫做MixedIL.Fody,彻底解决了这些问题。
以AssemblyKeyNameAttribute为例,这是.Net类库里的一个特性。它有个无公共setter的属性Name,那么如何为这个属性赋值呢。

