这次用NUnit做了三个测试
ContextBoundModel的类.测试了基本的AspectObject的行为.
IAspectServerMessageHandler,IMessageHandler,IMessageHandlerAttribute的一些行为.
下载:
http://www.lostinet.com/files/ 找到 lcbm 的最后的版本.
另外,如果你有兴趣,希望你能和我一起讨论IMessageHandlerBase的优先级别的问题.
这个是一个优先级别的enum.在v1.0出来前不给它们具体的值.
TraceMessageHandling的级别最高.代表它在最外层调用.
FinalImplementation则放在最内层,用于替换默认实现过程
public enum MessageHandlerPriority
{
//,AspectObjectProxy , Setup MessageContext
TraceMessageHandling ,
CheckArguments ,
SetupComPlusContext ,
SetupEnvironment ,
CheckPermission ,
SetupTransaction ,
Default ,
CheckReturnValues ,
PrepareImplementation ,
AspectImplementation ,
///
/// You can replace the default implementation here!
/// FinalImplementation
}
对于一个AOP的拦截,目前我能想到的就是这些过程.如果你有些想法,请给我意见.
谢谢!!