【发布时间】:2011-04-05 14:32:33
【问题描述】:
在我的代码中,我订阅了the following event :-
UploadFolderMessageQueue.ReceiveCompleted += UploadMSMQReceiveCompleted;
效果很好,当消息队列的 Recieved Completed 事件触发时,我的委托会处理它。
现在,我想在订阅之前检查该事件是否已被订阅。执行此操作时出现编译时错误:-
// Compile Time Errors...
if (UploadFolderMessageQueue.ReceiveCompleted == null)
{
UploadFolderMessageQueue.ReceiveCompleted += UploadMSMQReceiveCompleted;
UploadFolderMessageQueue.Formatter =
new XmlMessageFormatter(new[] {typeof (string)});
}
事件 'System.Messaging.MessageQueue.ReceiveCompleted' 只能出现在左侧 += 或 -=
我知道这非常简单......但我很难过:(有什么建议吗?
【问题讨论】:
-
您应该尝试设计您的代码,以便您以可预测的方式订阅和退订。