Hybernating async workflows



I have created a module that is hybernating async workflows (IAsyncStateMachine) to a database table. I need to detect the parent of an actual IAsyncStateMachine and use Task.GetDelegatesFromContinuationObject() for this.

If I don’t await a promise task before calling this method I receive always null. The reason is that m_continuationObject of the current task is not set.

I implemented the solution based on a blog post from Lucian Wischik which is a pretty good start: https://blogs.msdn.microsoft.com/lucian/2016/04/20/async-workflow-2/

Lucian is facing the issue there, too. He’s work-a-rounding it by just calling “await Task.Delay(100)” before calling his “await Checkpoint.Save()” method.

Thanks for help.
Best regards,

.NET Foundation Website | Blog | Projects | Code of Conduct