SourceGenerator 使用姿势(1):生成代理类,实现简单的AOP
查看原文
? SourceGenerator 使用姿势(1):生成代理类,实现简单的AOP
内容简介:
SourceGenerator 已经出来很久了,也一直在关注。之前观摩大佬 xljiulang 的 WebApiClient 使用 SourceGenerator 生成接口代理类,深受启发,准备拿过来用看看(发出白嫖的声音),写个编译期静态代理AOP。本篇重点是怎么获取元数据,得到想要的数据,生成想要的代码(往下拖到第 4 点)。
几个月前写了个demo,现在趁着有空重新整理完善了下。.net 6 新增了个 IIncrementalGenerator 进行增量编译,这个还没研究,后面再说。
我的思路是继承,生成一个类去继承需要拦截的实际类,然后重写相关的方法,此时插入额外的方法,比如 Before,After 等。这就要求相关方法必须是 可重写 的, virtual 或 override。好...
?更多精彩头条内容,请收藏程序员导航网,为您提供一站式码农必备网址大全,持续为您输出优质站点和IT信息!
暂无评论...