Я пытаюсь узнать больше о массовом транспорте, поскольку мы думаем о его принятии.Теперь у меня есть Saga на основе классов, которая работает должным образом:
public class EchoSaga : ISaga,
InitiatedBy<TextEntered>,
Orchestrates<TextEchoStart>,
Orchestrates<EchoEnd>
{
public Guid CorrelationId { get; set; }
public string CurrentState { get; set; }
public string Text { get; set; }
public Task Consume(ConsumeContext<TextEntered> context)
{
CurrentState = "Entered";
Text = context.Message.Text;
return Task.CompletedTask;
}
public Task Consume(ConsumeContext<TextEchoStart> context)
{
CurrentState = "Start";
Text = context.Message.Text;
return Task.CompletedTask;
}
public Task Consume(ConsumeContext<EchoEnd> context)
{
CurrentState = "End";
Text = context.Message.Text;
return Task.CompletedTask;
}
}
Saga на основе классов отличается от конечного автомата Saga и более подробно описана в документации в разделе Saga: http://masstransit -project.com / MassTransit / понимаю / key-ideas.html .
Как пометить Saga как завершенную после использования EchoEnd, чтобы она была удалена из базы данных (я уженастроить репозиторий)?Если бы я использовал конечный автомат Saga, то я мог бы сделать это:
.Finalize()
.SetCompletedWhenFinalized()
Как мне сделать это с помощью Saga на основе классов?
Я понимаю, что, возможно, немного отступлю назадздесь, однако, я пытаюсь узнать, как начался Mass Transit и где он сейчас находится, чтобы увидеть, отвечает ли он нашим требованиям.Пока очень доволен.