首页 > Web开发 > 详细

net5 Autofac 支持AOP (1)

时间:2021-03-06 23:47:21      阅读:72      评论:0      收藏:0      [点我收藏+]

1、Nuget引入Castle.Core程序集+Autofac.Extras.DynamicProxy程序集

2、自定义类如下,需要继承IInterceptor,实现方法

 public class CustomAutofacAop : IInterceptor
   {
       public void Intercept(IInvocation invocation)
       {
           {
               Console.WriteLine("方法执行前");
           }
           invocation.Proceed();//执行这句话就是去执行具体的实例的这个方法
           {
               Console.WriteLine("方法执行后");
           }
       }
   }

3、在服务的抽象(接口)上标记[Intercept(typeof(CustomAutofacAop))]

[Intercept(typeof(CustomAutofacAop))] //AOP能够在当前接口生效
    public interface ICustomServiceA
    {
        void Show();
    }

4、注册支持AOP扩展的类

在startup里  containerBuilder.RegisterType(typeof(CustomAutofacAop));

5、注册服务的时候,需要需要调用EnableInterfaceInterceptors,标记说明当前服务获取实例后可以支 持AOP

containerBuilder.RegisterType<CustomServiceA>().As<ICustomServiceA>().EnableInterfaceInterceptors(); //接口

  

net5 Autofac 支持AOP (1)

原文:https://www.cnblogs.com/wangmaolin/p/14491820.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!