Bei der Probe-ShoppingWeb der ShoppingCartStateMachine gibt es eine Konfiguration, wie diese Ereignisse planen:Wie wird ein geplantes Ereignis mit Verzögerung dynamisch auf MassTransit deklariert?
Schedule(() => CartExpired, x => x.ExpirationId, x =>
{
x.Delay = TimeSpan.FromSeconds(10);
x.Received = e => e.CorrelateById(context => context.Message.CartId);
});
Beachten Sie, dass „x.Delay“ Eigenschaft, dass auf Konstruktor gesetzt ist, aber auf meinem Fall würde ich das informieren, Zeitverzögerung dynamisch.
When(ApproveOrder)
.Then(context =>
{
context.Instance.EstimatedTime = context.Data.EstimatedTime;
context.Instance.Status = context.Data.Status;
})
... und stellen Sie einen Zeitplan Ereignis mit "context.Data.EstimatedTime" Delay z.B.
Es gibt eine Möglichkeit, dies zu tun, mit "Schedule" -Deklaration auf State Machine Constructor-Klasse?