/// <summary> /// Insere ou altera um objeto no banco de dados. /// </summary> /// <param name="cidade">O(A) cidade.</param> /// <param name="op">A operação.</param> /// <returns>O objeto após a persistência.</returns> public MyMediatRExample.OR.Cidade InserirAlterar(MyMediatRExample.OR.Cidade cidade, Regisoft.Operacao op) { cidadeDAO.ValidaNotNull(cidade); Cidade _ix_cidade_uf_descricao = cidadeDAO.SelecionarPor(new string[] { "IdUf", "Descricao" }, new object[] { cidade.IdUf, cidade.Descricao }); if ((op == Operacao.Incluir && _ix_cidade_uf_descricao != null) || (op == Operacao.Alterar && _ix_cidade_uf_descricao != null && _ix_cidade_uf_descricao.IdCidade != cidade.IdCidade)) { throw new ExceptionRS("Violação do índice: IX_CIDADE_UF_DESCRICAO"); } cidadeDAO.BeginTransaction(); try { if (op == Regisoft.Operacao.Alterar) { cidade = cidadeDAO.CopiarParaPersistente(cidade.IdCidade.Value, cidade); } cidade = cidadeDAO.InserirAlterar(cidade, op); cidadeDAO.CommitTransaction(); } catch { cidadeDAO.RollbackTransaction(); throw; } return(cidade); }
/// <summary> /// Exclui o objeto do banco de dados. /// </summary> /// <param name="cidade">O(A) cidade.</param> public void Excluir(MyMediatRExample.OR.Cidade cidade) { cidadeDAO.BeginTransaction(); try { cidadeDAO.Excluir(cidade); cidadeDAO.CommitTransaction(); } catch { cidadeDAO.RollbackTransaction(); throw new ExceptionRS("Impossivel excluir. Registro em uso."); } }