首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

有关delegate和event的有关问题

2013-09-15 
有关delegate和event的问题在Remoting中,定义了一个用于传输的类public class Message : MarshalByRefObje

有关delegate和event的问题
在Remoting中,定义了一个用于传输的类
public class Message : MarshalByRefObject
    {
        public delegate void MessageHandler(string msg);

        public static event MessageHandler OnSendMessage;

        public void SendMessage(string msg) //发送消息
        {

            if (OnSendMessage != null)

                OnSendMessage(msg);

        }
    }

在服务器端定义了一个处理消息的类

 class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Host Started!");

            HttpChannel channel = new HttpChannel(20001);//定义个通道并指定端口

            ChannelServices.RegisterChannel(channel, false);//服务端注册通道

            RemotingConfiguration.RegisterWellKnownServiceType(typeof(Message.Message), "Message", WellKnownObjectMode.Singleton);//服务端注册类型,并使用Singletong激活方式

            Message.Message.OnSendMessage += new Message.Message.MessageHandler(Message_OnSendMessage);//订阅事件

            Console.Read();

        }

        public static void Message_OnSendMessage(string msg) //
        {

            Console.WriteLine(msg);

        }
    }



public delegate void MessageHandler(string msg) 与 
public static event MessageHandler OnSendMessage

是什么关系啊? event是delegate的方法的一种吗?


[解决办法]
http://bbs.csdn.net/topics/390558944

sp1234说的很好。

热点排行