context
bus.Send()
你可能正在使用
IMessageSession
IMessageHandlerContext
,相当于立即发送。
public async Task Handle(ICommand1 message, IMessageHandlerContext context)
{
using (var tx = _session.BeginTransaction(IsolationLevel.ReadCommitted))
{
await HandleMessage1(message1, context);
_session.Flush();
tx.Commit();
}
}
private async Task HandleMessage1(ICommand1 message1, IMessageHandlerContext context)
{
// Updating database
...
// Sending other Command2 to separate handler
await context.Send<ICommand2>(x =>
{
...
});
}