public UsuarioDTO CrearUsuario(UsuarioRequest request) { if (request == null) { throw new ArgumentNullException(nameof(request)); } if (request.RequestUserInfo == null) { throw new ArgumentNullException(nameof(request.RequestUserInfo)); } if (string.IsNullOrEmpty(request.UsuarioId)) { throw new ArgumentNullException(nameof(request.UsuarioId)); } if (string.IsNullOrEmpty(request.Nombre)) { throw new ArgumentNullException(nameof(request.Nombre)); } if (string.IsNullOrEmpty(request.Contrasenia)) { throw new ArgumentNullException(nameof(request.Contrasenia)); } var nuevoUsuario = _usuarioDomainService.CrearUsuario(request); if (nuevoUsuario == null) { return new UsuarioDTO { ValidationErrorMessage = "Problemas al crear usuario" } } ; var transactioninfo = TransactionInfoHelper.CrearTransactionInfo(request.RequestUserInfo); _usuarioRepositorio.Add(nuevoUsuario); _usuarioRepositorio.UnitOfWork.Commit(transactioninfo); return(new UsuarioDTO { UsuarioId = nuevoUsuario.UsuarioId, Nombre = nuevoUsuario.Nombre }); }