0
:たUnitOfWork:私は以下のような方法を持ってどのようにログをロールバックし、維持するために
using (var unitOfWork = _unitOfWorkManager.Begin())
{
var result = await ExcuteOperator(input);
if (!result.WorkflowStatus)
{
unitOfWork.Dispose();
}
unitOfWork.Complete();
}
public async Task<ExecuteOperatorOutput> ExcuteOperator(ExecuteOperatorInput input)
{
//Doing something
DoSomething(input);
//Insert log
await _logRepository.InsertAsync(logInput);
//Recursive
return await ExcuteOperator(input);
}
私の質問は:unitOfWork.Complete()
前に投げる例外なく手動unitOfWork
をロールバックし、挿入されたログを保持するためにどのように?
。 – aaron
これは、自動的にロールバックさせるために 'unitOfWork.Complete()'の前に例外をスローする必要があることを意味しますか? –
ありがとうございました.2番目の質問はどうですか?トランザクションがロールバックされた後にログを保持する方法 –