zoukankan      html  css  js  c++  java
  • Spring.net 事件的注入

    1.首先上客户端代码

      static void Main(string[] args)
            {
                IApplicationContext ctx = ContextRegistry.GetContext();

                 Console.WriteLine("事件注册");
                Door door = (Door)ctx.GetObject("door");
                door.OnOpen("Opening!");
                Console.WriteLine();

                Console.ReadLine();
            }

     spring配置里将做到为door对象的OpenTheDoor事件注入事件的触发代码 触发代码放在Men类的OpenThisDoor方法里

     //先定义一个委托
        public delegate string OpenHandler(string arg);

        public class Door
        {
            public event OpenHandler OpenTheDoor;

            public void OnOpen(string arg)
            {
                //调用事件
                if (OpenTheDoor != null)
                {
                    Console.WriteLine(OpenTheDoor(arg));
                }
            }
        }

        public class Men
        {
            public string OpenThisDoor(string arg)
            {
                return "参数是:" + arg;
            }
        }

    最后上配置文件 <!--下面配置文件的意思是men对象为door对象的监听者 当door对象执行OpenTheDoor这个事件则触发的结果则为 men对象的OpenThisDoor 事件参数arg也要有-->

          <!--事件注入-->
          <object id="men" type="SpringNet_MethodDi.Men, SpringNet_MethodDi">
            <listener event="OpenTheDoor" method="OpenThisDoor">
              <ref object="door"/>
            </listener>
          </object>          
          <object id="door" type="SpringNet_MethodDi.Door, SpringNet_MethodDi" />

  • 相关阅读:
    【转载】Oracle实例和Oracle数据库(Oracle体系结构)
    【转载】Oracle 11g R2 for Win7旗舰版(64位)- 安装
    eclipse 中卸载插件的方法
    eclipse编辑jsp文件和javascript代码很卡解决办法
    ExtJS登陆页面涉及到的几个问题
    一个关于ExtJS4具体控件的详细教程
    ES6与React中this完全解惑
    for, for..in, in, for...of的区别
    Sublime Text3的react代码校验插件
    Sublime Text3中JSX支持Emmet快捷键
  • 原文地址:https://www.cnblogs.com/kexb/p/4574053.html
Copyright © 2011-2022 走看看