什么二进制重写器用于实现Microsoft的代码合同?

4 .net compiler-construction aop code-contracts

我说的是那些最终将在.NET 4.0中出现的代码契约.他们使用什么二进制重写器来注入使其全部工作并且公开可用的代码?我希望它不仅仅是一个编译器,因为我希望能够将它们的二进制重写器用于AOP.

Joe*_*rle 5

如果您想编写自己的AOP或其他任何修改IL的内容,您可能需要查看MS Research 在Codeplex上的Common Compiler Infrastructure项目.它是一个非常棒的工具的开源包,提供IL读者和IL编写器实现.

Jason Bock还有一系列关于Code Injection with CCI的博客文章,它们很好地概述了使用这些工具实现AOP样式的程序集修改.

  • Code Contracts二进制重写器构建在CodePlex上可用的顶级CCI上.用于挖掘合同的API已经发布在cciast.codeplex.com项目中(查找IContractProvider). (2认同)