好吧,这对我们来说是全新的,本质上我们希望能够在 10 分钟后让 session 超时。这很简单。
我们还想等待外部用户输入——本质上是来自多步骤表单的数据。也很容易。
我们希望能够 Task.WaitAny (waitforexternalevent("updatedata"), timeout)
但这会导致编排出现问题。
这些概念单独起作用,但是我们看到 Task.WaitAny 解除阻止并重用第一个“updatedata”事件。其他“updatedata”事件永远不会到达编排。
这是预期的行为吗?我们是否以无效的方式混合概念,或者这是一个错误?
最佳答案
我们可能需要查看您的更多代码,但根据您在此处描述的内容,我认为您所看到的行为是应该预期的。
您的编排正在“等待”超时或外部事件。一旦触发该外部事件,编排就会向前推进,即使某些事件再次触发该事件,编排也不会期待/等待它。
同样,这是基于您迄今为止在问题中包含的代码片段。如果您需要处理多次广播到编排中的事件,则需要某种循环。
关于Azure 持久功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48533154/