编译时代码注入

发布于 2024-07-14 13:01:58 字数 307 浏览 4 评论 0原文

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

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

Lately, I've been working with PostSharp a bit. It is an AOP framework that allows us to do compile time code injection. You can just reference PostSharp assemblies, use it in your code and after compilation, you'll get an assembly that the desired code has been injected into it. I tried to find out how PostSharp integrates itself into the compilation process of Visual Studio and changes the code, but no results till now.

Is there any way to get Visual Studio to run some code during or after the compilation without using the project's post-build task or any plug-in?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

删除→记忆 2024-07-21 13:01:58

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

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

The magic is on last line of C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets. This loads a file c:\Program Files\MSBuild\v3.5\Custom.After.Microsoft.Common.targets, if present.

So PostSharp edits this file during installation and adds a reference to its own targets file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文