public async Task <IActionResult> PostTecnologiaAsync([FromBody] AvaliarNovaTecnologiaCommand command) { return(await Task.Run(() => { using (var tran = new TransactionScope()) { _categoriaCommandHandler.Handle(new AdicionarTecnologiaCommand() { IconeUrl = command.IconeUrl, IdCategoria = command.IdCategoria, Tecnologia = command.Tecnologia }); _uowCategorias.Commit(); var tecnologia = _categoriaCommandHandler.Result.Tecnologias.FirstOrDefault(x => x.Nome == command.Tecnologia); _avaliacaoCommandHandler.Handle(new AtualizarNivelCommand() { Nivel = command.Nivel, IdColaborador = command.IdColaborador, IdTecnologia = tecnologia.Id, }); _uowAvaliacoes.Commit(); tran.Complete(); return Response(_avaliacaoCommandHandler.Notifications); } })); }