假设我已宣布
public event EventArgs<SyslogMessageEventArgs> MessageReceived;
public int SubscribedClients
{
get [...]
}
我想算一下我班上有多少“订阅的客户”。我需要通过我的API(未在片段中显示)加上那些channel.MessageReceived+=myMethod;
那些通过网络订阅的内容求和。
我知道可以使用add
和remove
语句显式声明C#事件,并且我可以肯定地将+或-1计为本地计数器,但我从未编写过显式事件的代码C#,所以我不知道在添加和删除时要执行的更多操作,而不是更新计数器。
谢谢。
答案 0 :(得分:63)
MessageReceived.GetInvocationList().Length