如何基于条件退出PostSharp方面的OnEntry方法中的方法

时间:2010-03-13 08:48:14

标签: c# postsharp aop

我希望方面基于如下条件退出方法调用:

    [AttributeUsage(AttributeTargets.Method)]
    public class IgnoreIfInactiveAttribute : OnMethodBoundaryAspect
    {
        public override void OnEntry(MethodExecutionEventArgs eventArgs)
        {
             if (condition)
            {
                **// How can I make the method return here?**
            }
        }
    }

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:10)

好的我自己弄清楚了。这里的解决方案是为了每个人的利益:

    [AttributeUsage(AttributeTargets.Method)] 
    public class IgnoreIfInactiveAttribute : OnMethodBoundaryAspect 
    { 
        public override void OnEntry(MethodExecutionEventArgs eventArgs) 
        { 
             if (condition) 
            { 
                eventArgs.FlowBehavior = FlowBehavior.Return;
            } 
        } 
    }