Castle AOP 系列(二):对接口方法调用的拦截(有源码)

本文详细介绍了如何使用Castle AOP对接口方法进行拦截,通过定义接口CastleAOPTestB.Lib.IPerson及其实现类CastleAOPTestB.Model.Person,以及创建单纯拦截器SimpleInterceptor和接口实现类拦截器ModelInterceptor。文章通过两个测试案例展示了拦截器的调用,并给出了调用结果。读者可以下载完整代码进行实践。
摘要由CSDN通过智能技术生成

相比于对类方法的拦截,对接口方法的拦截为我们的架构设计方面提供了更大的自由度。

1. 接口CastleAOPTestB.Lib.IPerson的定义

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CastleAOPTestB.Lib
{
    public interface IPerson
    {
        void SayHello();
        void SayName(string name);

        string GotoSchool(string schoolName, string grade, string classes);
    }

}

 

2. 接口的实现类CastleAOPTestB.Model.Person的定义

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using CastleAOPTestB.Lib;
namespace CastleAOPTestB.Model
{
    public class Person : IPerson
    {
        public void SayHello()
        {
            Console.WriteLine("您好。");
        }
        public void SayName(string name)
        {
            Console.WriteLine("我是{0}。", name);
        }

        public string GotoSchool(string schoolName, string grade, string classes)
        {

            return string.Format("我就读的学校是:{0},我的班级是:{1} {2}", schoolName, grade, classes);
        }


    }
}

 


两个都很普通的接口和实现两个都很普通的接口和实现两个都很普通的接口和实现两个都很普通的接口和实现。

 

3. 单纯的拦截器CastleAOPTestB.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值