コード例 #1
0
        // GET: SubPub
        public ActionResult Index()
        {
            //新建两个订阅器
            SubPubComponet subPubComponet1 = new SubPubComponet("订阅器1");
            SubPubComponet subPubComponet2 = new SubPubComponet("订阅器2");



            return(View());
        }
コード例 #2
0
        public ActionResult AjaxSubPub()
        {
            //新建两个订阅器
            SubPubComponet subPubComponet1 = new SubPubComponet("订阅器1");
            SubPubComponet subPubComponet2 = new SubPubComponet("订阅器2");
            //新建两个发布者
            IPublish publisher1 = new Publisher("TJVictor1");
            IPublish publisher2 = new Publisher("TJVictor2");

            //与订阅器关联
            publisher1.PublishEvent += subPubComponet1.PublishEvent;
            publisher1.PublishEvent += subPubComponet2.PublishEvent;
            publisher2.PublishEvent += subPubComponet2.PublishEvent;
            //新建两个订阅者
            Subscriber s1 = new Subscriber("订阅人1");
            Subscriber s2 = new Subscriber("订阅人2");

            //进行订阅
            s1.AddSubscribe = subPubComponet1;
            s1.AddSubscribe = subPubComponet2;
            s2.AddSubscribe = subPubComponet2;
            //发布者发布消息
            publisher1.Notify("博客1");
            publisher2.Notify("博客2");
            //发送结束符号
            Console.WriteLine("".PadRight(50, '-'));
            //s1取消对订阅器2的订阅
            s1.RemoveSubscribe = subPubComponet2;
            //发布者发布消息
            publisher1.Notify("博客1");
            publisher2.Notify("博客2");
            //发送结束符号
            Console.WriteLine("".PadRight(50, '-'));


            Console.ReadLine();
            Console.ReadLine();

            return(Json("成功"));
        }