//Persistir e inserir um novo registro //Inserir RedeBinaria, Pessoa e lista de Endereços vinculados private bool inserir(RedeBinaria ORedeBinaria) { ORedeBinaria.setDefaultInsertValues(); db.RedeBinaria.Add(ORedeBinaria); db.SaveChanges(); return(ORedeBinaria.id > 0); }
//Salvar um novo registro ou atualizar um existente public bool salvar(RedeBinaria ORedeBinaria) { bool flagSucesso = false; if (ORedeBinaria.id > 0) { flagSucesso = this.atualizar(ORedeBinaria); } if (ORedeBinaria.id == 0) { flagSucesso = this.inserir(ORedeBinaria); } return(flagSucesso); }
//Persistir e atualizar um registro existente //Atualizar dados da RedeBinaria, Pessoa e lista de endereços private bool atualizar(RedeBinaria ORedeBinaria) { //Localizar existentes no banco RedeBinaria dbRedeBinaria = this.db.RedeBinaria.Find(ORedeBinaria.id); if (dbRedeBinaria == null) { return(false); } //Configurar valores padrão ORedeBinaria.setDefaultUpdateValues(); //Atualizacao da RedeBinaria var RedeBinariaEntry = db.Entry(dbRedeBinaria); RedeBinariaEntry.CurrentValues.SetValues(ORedeBinaria); RedeBinariaEntry.ignoreFields(new [] { "idMembro" }); db.SaveChanges(); return(ORedeBinaria.id > 0); }
//Salvar um novo registro ou atualizar um existente public RedeBinaria salvar(NovoMembroRede ONovoMembro) { var ORedeBinaria = this.db.RedeBinaria.FirstOrDefault(x => x.idMembro == ONovoMembro.idMembroPai); if (ORedeBinaria == null) { ORedeBinaria = new RedeBinaria(); ORedeBinaria.idMembro = ONovoMembro.idMembroPai; if (ONovoMembro.flagEsquerda == true) { ORedeBinaria.idMembroEsquerda = ONovoMembro.idMembro; ORedeBinaria.dtCadastroEsquerda = DateTime.Now; } else { ORedeBinaria.idMembroDireita = ONovoMembro.idMembro; ORedeBinaria.dtCadastroDireita = DateTime.Now; } } if (ORedeBinaria.id > 0) { this.atualizar(ORedeBinaria); } if (ORedeBinaria.id == 0) { this.inserir(ORedeBinaria); } return(ORedeBinaria); }