使用AOP微型框架的例子

本文基于前两篇文章中AOP微型框架的实现,给出测试例子。包含AopControlProxyFactory类、AopControlProxy类的代码实现,还展示了Example类的代码,该类委托给AOP代理,有say_hello和sayByeBye等方法。

在基于前两篇文章给出的AOP微型框架的实现的基础上,我们可以写个例子来测试一下了:)


public class AopControlProxyFactory : IAopProxyFactory
{
#region IAopProxyFactory 成员
public AopProxyBase CreateAopProxyInstance(MarshalByRefObject obj, Type type)
{
return new AopControlProxy(obj ,type) ;
}
#endregion
}

//自定义真实代理
public class AopControlProxy : AopProxyBase
{
public AopControlProxy(MarshalByRefObject obj ,Type type) : base(obj ,type)
{

}

public override void PreProcess(IMessage requestMsg)
{
Console.Write("Begin Aop !") ;
}

public override void PostProcess(IMessage requestMsg, IMessage Respond)
{
Console.Write("End Aop !") ;
}
}

[AopProxyAttribute(typeof(AopControlProxyFactory))] //将自己委托给AOP代理AopControlProxy
public class Example : ContextBoundObject//放到特定的上下文中,该上下文外部才会得到该对象的透明代理
{
private string name ;
public Example(string a)
{
this.name = a ;
}


[MethodAopSwitcherAttribute(true)]
public void say_hello()
{
Console.WriteLine("hello ! " + name ) ;
}

public void sayByeBye()
{
Console.WriteLine("Bye ! " + name ) ;
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值