0
在使用NServiceBus調度程序時,我觸發委託定義失敗。我在下面的鏈接中使用了文檔來設置EndpointScheduler類。NServiceBus 5.2.14 - 調度程序無法觸發委託
創建端點對應的超時隊列,並且消息成功進入隊列。在執行過程中不會遇到錯誤,但調度程序不會觸發委託。我目前使用NServiceBus 5.2.14,類似的測試使用NServiceBus 3.2.7。任何想法爲什麼調度程序不會觸發委託?
http://docs.particular.net/nservicebus/scheduling/
public class EndpointScheduler : IWantToRunWhenBusStartsAndStops, ILoggable
{
public EndpointScheduler(Schedule schedule)
{
this.schedule = schedule;
}
public void Start()
{
schedule.Every(
TimeSpan.FromMinutes(1),
"Test",
() =>
{
Debug.WriteLine("I'm testing the scheduler");
}
);
}
public void Stop()
{
}
}
好吧,不幸的是它只是在我的機器上工作。 Debug.WriteLine不會輸出到控制檯,但會顯示在Visual Studio輸出窗口中。 Console.WriteLine適用於控制檯。我還會在任務之前和之後看到記錄的INFO消息,並且可以在它上面找到一個斷點。我假設你的例子缺少一個私有'schedule' var,否則它不會編譯。什麼是ILoggable,因爲這不是來自NSB。這有什麼關係嗎?否則,請顯示您的端點配置代碼。確定TimeoutManager和TimeoutManagerBasedDeferral功能已啓用? –
@DavidBoike這完全是由我造成的。我的EndpointConfig有這個配置DisableFeature(); 刪除它糾正了我的錯誤。感謝您看看這個! –
Pietro