0

我正在使用 AspNetZero/AspNetBoilerplate 进行一些自动化测试,并将我的模块配置为不禁用事务

    Configuration.UnitOfWork.IsTransactional = false;

但它不起作用,我收到以下消息:

Configuration.UnitOfWork.IsTransactional = false;

我的测试正在调用以下方法:

   UnitOfWork(TransactionScopeOption.Suppress)]
   public virtual async Task<Guid> CreateAsync(CreateEntryRequest input) 
   {
        // Some code here ...

       
   }

我错过了任何设置吗?

4

2 回答 2

0
[UnitOfWork(isTransactional: false)]
public GetTasksOutput GetTasks(GetTasksInput input)
{
    var tasks = _taskRepository.GetAllWithPeople(input.AssignedPersonId, input.State);
    return new GetTasksOutput
            {
                Tasks = Mapper.Map<List<TaskDto>>(tasks)
            };
}

https://aspnetboilerplate.com/Pages/Documents/Unit-Of-Work#non-transactional-unit-of-work

于 2021-03-25T11:20:39.173 回答
0

我最终得到了这个解决方案:

public virtual async Task<Guid> CreateAsync(CreateEntryRequest input)
{
  using (var uow = _unitOfWorkManager.Begin(TransactionScopeOption.RequiresNew))
  {
     // Some code here ...
  }
}
于 2021-03-26T09:09:39.443 回答