【发布时间】:2016-03-18 03:35:04
【问题描述】:
有没有办法拦截方法调用,查找条件并跳过执行?该方法不返回任何内容,我想将其视为已成功完成并继续使用堆栈的其余部分执行。
public IMessageSink NextSink {
get { return m_next; }
}
public IMessage SyncProcessMessage(IMessage msg) {
if (//some condition is met) {
// should skip the method execution
} else {
IMessage returnMethod = m_next.SyncProcessMessage(msg);
return returnMethod;
}
}
【问题讨论】:
-
什么都不返回
return; -
仅供参考,如果您的条件恰好是检查
m_next == null,看起来很可能,那么您可以在 C# 6 中的一行中执行此操作:return m_next?.SyncProcessMessage(msg);
标签: c# aop interceptor