编译时间码注入

时间:2009-03-02 09:29:48

标签: aop postsharp

最近,我一直在使用PostSharp。它是一个AOP框架,允许我们进行编译时代码注入。您可以只引用PostSharp程序集,在代码中使用它,在编译之后,您将获得一个已将所需代码注入其中的程序集。我试图找出PostSharp如何将自身集成到Visual Studio的编译过程中并更改代码,但直到现在都没有结果。

有没有办法让Visual Studio在编译期间或之后运行一些代码而不使用项目的构建后任务或任何插件?

1 个答案:

答案 0 :(得分:1)

魔法在C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets的最后一行。这会加载文件c:\Program Files\MSBuild\v3.5\Custom.After.Microsoft.Common.targets(如果存在)。

因此,PostSharp会在安装过程中编辑此文件,并添加对其自己的目标文件的引用。