我得到了一個使用WWF和externaly引發事件的NullReference問題。 WWF狀態機與服務實例一起在狀態機中引發事件來提供數據以及 - 當然 - 改變狀態。儘管使用事件的「正常」操作正常工作,但我遇到了一個奇怪的問題。Windows Workflow Foundation NullReferenceException
爲了處理超時情況,我讓狀態初始化器使用一個外部超時機制來在篡改服務中註冊一個回調。在給定的時間之後,回調函數將運行,並在狀態機中引發超時事件。這些事件定義如下:
event EventHandler<ExternalDataEventArgs> DeviceSysmapBrdcstTimeoutEvent;
和上述提到的工作如果沒有從超時機制中調用。 ExternalDataEventArgs是使用有效的Guid創建的。該事件提出訪問該事件內的代表:
System.Workflow.Activities.EventDeliveryFailedException was unhandled by user code
Message="Event \"DeviceSysmapBrdcstTimeoutEvent\" on interface type \"...\" for instance id \"efa3da3d-8546-4fcf-bc56-bbec04df6d69\" cannot be delivered."
Source="System.Workflow.Activities"
StackTrace:
at System.Workflow.Activities.WorkflowMessageEventHandler.EventHandler(Object sender, ExternalDataEventArgs eventArgs)
任何想法?謝謝。