|
1
8
你考虑过面向方面编程吗?有点像 PostSharp . |
|
|
2
2
我认为唯一的方法是重写方法体,以便在调用方法时通知您,或者使用CLR分析Api。 第一种方法可以通过使用AOP框架来实现。你可以使用Postsharp(它已经变成了一个商业产品)来实现onmethodboundaryapect。下面是一个例子: Derive the class from OnMethodBoundaryAspect |
|
|
3
0
反省是解决办法的一半。为了拦截方法调用,需要对观察到的对象进行包装。通常这是通过远程处理代理对象来完成的。 企业库中有一个Unity截取块,它可以满足您的需要。此外,您可能还想查看Castle framework的DynamicProxy,它使您能够非常彻底地控制这个拦截过程。 谷歌面向方面编程将给你更多的信息。 |
|
|
4
-1
可以使用扩展方法 因此,您可以使用不同的属性并在实际方法之前或之后修改所有内容 |