zoukankan      html  css  js  c++  java
  • AOP的最佳注入方式——MSIL注入

    下载PostSharp(Visual Studio Gallery)。

    安装一个AOP编译器和引入PostSharp.Aspects(注意安装过程中请使用免费的Express版本),然后初步演示代码:

    using PostSharp.Aspects;
    using System;
    
    namespace ConsoleApplication1
    {
        [Serializable]
        public class AOPILTestAttribute : OnMethodBoundaryAspect
        {
            public override void OnEntry(MethodExecutionArgs args)
            {
                Console.WriteLine("进入方法:"+args.Method.Name);
                var argumentList = args.Arguments;
                var arguments = args.Method.GetParameters();
    
                for (int i = 0; i <arguments.Length; i++)
                {
                    Console.WriteLine("参数名称:" + arguments[i].Name + "	参数类型:" + arguments[i].ParameterType + "	参数数值:" + argumentList[i]);
                }
            }
        }
        public class MainTest
        {
            public event Action<int> MyAction = null;
    
            public void Call()
            {
                MyAction(1);
            }
            [AOPILTest]
            static void Main(string[] args)
            {
                Console.WriteLine("我是Main方法");
                MainTest mt = new MainTest();
                mt.MyAction += mt_MyAction;
                mt.Call();
            }
            [AOPILTest]
            static void mt_MyAction(int i)
            {
                Console.WriteLine("我是Action,我的数值是:"+i);
            }
        }
    }
  • 相关阅读:
    查询
    常用代码块模板,get,load区别,session.get(,)参数解释,session方法总结
    hibernate.cfg.xml配置文件
    request,session,application,三者比较
    maven 环境搭建
    selenium环境搭建
    makedown使用语法
    selenium浏览器操作
    selenium元素操作
    Selenium 元素定位
  • 原文地址:https://www.cnblogs.com/ServiceboyNew/p/4455371.html
Copyright © 2011-2022 走看看