public void saveBecaTipo(BecaTipo becaTipo) { if (Utils.haveAccessTo(Utils.MODULOBECAS)) { Models.bienestarEntities db = new Models.bienestarEntities(); if (becaTipo.CODIGO == 0) { BE_BECA_TIPO becaTipoSave = convertToBECA_TIPO(becaTipo); db.BE_BECA_TIPO.AddObject(becaTipoSave); db.SaveChanges(); writeResponseObject(becaTipoSave); } else { using (Models.bienestarEntities dbTemp = new Models.bienestarEntities()) { Models.BE_BECA_TIPO currentBecaTipo = dbTemp.BE_BECA_TIPO.Single(bt => bt.CODIGO == becaTipo.CODIGO); currentBecaTipo.BE_BECA_TIPO_DOCUMENTO.ToList().ForEach(btd => dbTemp.BE_BECA_TIPO_DOCUMENTO.DeleteObject(btd)); dbTemp.SaveChanges(); } BE_BECA_TIPO becaTipoSave = db.BE_BECA_TIPO.Where(b => b.CODIGO == becaTipo.CODIGO).Single(); becaTipoSave.NOMBRE = becaTipo.NOMBRE; convertToBECA_TIPO(becaTipo).BE_BECA_TIPO_DOCUMENTO.ToList().ForEach(btd => becaTipoSave.BE_BECA_TIPO_DOCUMENTO.Add(btd)); db.SaveChanges(); writeResponseObject(becaTipoSave); } } }
// transforma el objecto BecaTipo en una entidad BE_BECA_TIPO private BE_BECA_TIPO convertToBECA_TIPO(BecaTipo becaTipo) { BE_BECA_TIPO becaTipoResult = new BE_BECA_TIPO(); becaTipoResult.CODIGO = becaTipo.CODIGO; becaTipoResult.NOMBRE = becaTipo.NOMBRE; becaTipoResult.BE_BECA_TIPO_DOCUMENTO = new System.Data.Objects.DataClasses.EntityCollection <BE_BECA_TIPO_DOCUMENTO>(); foreach (BecaTipoDocumento btd in becaTipo.BE_BECA_TIPO_DOCUMENTO) { BE_BECA_TIPO_DOCUMENTO becaTipoDocumento = new BE_BECA_TIPO_DOCUMENTO(); becaTipoDocumento.CODIGO = default(int); becaTipoDocumento.CODIGOTIPO = default(int); becaTipoDocumento.NOMBRE = btd.NOMBRE; becaTipoDocumento.DESCRIPCION = ""; becaTipoResult.BE_BECA_TIPO_DOCUMENTO.Add(becaTipoDocumento); } return(becaTipoResult); }