如何在编译之前在现有C#代码(而不是MSIL)中注入新代码,但不能更改.cs文件?
您可以使用Text Template Transformation Toolkit (T4)来处理此类情况。
使用写入partial class文件的T4模板。这是Visual Studio使用的模式 - 自动生成的代码在部分文件中,而您的代码在主.cs文件中。
你可以看看PostSharp。
你可以使用与Fody合作的Weavlyn或MSIL injection "IL Weaving"