public Fornecedor CriarNovoFornecedor(Fornecedor fornecedor, bool Atualizar = false) { if (fornecedor == null) { fornecedor = new Fornecedor(); fornecedor.FornecedorId = Guid.Empty; } using (IDataContextAsync context = new PCFTIDataContext()) using (IUnitOfWorkAsync unitOfWork = new UnitOfWork(context)) { IRepositoryAsync <Fornecedor> fornecedorRepository = new Repository <Fornecedor>(context, unitOfWork); IFornecedorService fornecedorService = new FornecedorService(fornecedorRepository); if (!ExisteFornecedor(fornecedor.FornecedorId)) { fornecedor = fornecedorService.NovoFornecedor(fornecedor); unitOfWork.SaveChanges(); } else if (Atualizar) { fornecedor = AtualizarFornecedor(fornecedor); unitOfWork.SaveChanges(); } unitOfWork.Dispose(); (new Execute()).Sistema.Versao.NovaVersaoParaCriacao(fornecedor); } return(fornecedor); }