.Net语言中关于AOP 的实现详解

文章主要和大家讲解开发应用系统时在.NET语言中关于AOP 的实现。LogASPect完成的功能主要是将Advice与业务对象的方法建立映射,并将其添加到Advice集合中。由于我们在AOP实现中,利用了xml配置文件来配置PointCut,因此对于所有ASPect而言,这些操作都是相同的,只要定义了正确的配置文件,将其读入即可。对于ASPect的SyncProcessMessage(),由于拦截和织入的方法是一样的,不同的只是Advice的逻辑而已,因此在所有ASPect的公共基类中已经提供了默认的实现:

public class LogASPect:ASPect 
{
public LogASPect(IMessageSink nextSink):base(nextSink)
{}
}

然后定义正确的配置文件:

<ASPect value ="LogAOP">
<advice type="before" assembly=" AOP.Advice" class="AOP.Advice.LogAdvice">
<pointcut>ADD</pointcut>
<pointcut>SUBSTRACT</pointcut>
</advice>
<advice type="after" assembly=" AOP.Advice" class="AOP.Advice.LogAdvice">
<pointcut>ADD</pointcut>
<pointcut>SUBSTRACT</pointcut>
</advice>
</ASPect>

NET技术.Net语言中关于AOP 的实现详解,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。