public void Add(CohortEnumLink link) { using (var dbContext = new MedialynxDbCohortEnumLinkContext()) { dbContext.CohortEnumLink.Add(link); dbContext.SaveChanges(); } }
public bool Remove(string cohortId) { Guid id = Utils.ToGuid(cohortId); using (var dbContext = new MedialynxDbCohortContext()) { if (id != Guid.Empty) { string sid = id.ToString("B"); Cohort cohort = dbContext.Cohorts.FirstOrDefault(c => c != null && c.Id == sid); if (cohort != null) { dbContext.Cohorts.Remove(cohort); dbContext.SaveChanges(); using (var dbContextLinks = new MedialynxDbCohortEnumLinkContext()) { List <CohortEnumLink> links = dbContextLinks.CohortEnumLink.Where(link => link != null && link.CohortId == sid).ToList(); dbContextLinks.RemoveRange(links); dbContextLinks.SaveChanges(); } } return(true); } } return(false); }
public void RemoveRange(List <string> linkIds) { using (var dbContext = new MedialynxDbCohortEnumLinkContext()) { List <CohortEnumLink> linksToRemove = new List <CohortEnumLink>(); foreach (string id in linkIds) { linksToRemove.Add(dbContext.CohortEnumLink.FirstOrDefault(link => link != null && link.Id == id)); } dbContext.CohortEnumLink.RemoveRange(linksToRemove); dbContext.SaveChanges(); } }
public void Remove(string linkId) { List <CohortEnumLink> links = this.Get(linkId); if (links.Count > 0) { using (var dbContext = new MedialynxDbCohortEnumLinkContext()) { dbContext.CohortEnumLink.Remove(links[0]); dbContext.SaveChanges(); } } }
public void Update(CohortEnumLink link) { using (var dbContext = new MedialynxDbCohortEnumLinkContext()) { CohortEnumLink existsLink = dbContext.CohortEnumLink.FirstOrDefault(l => l != null && l.Id == link.Id); if (existsLink != null) { if (Utils.CopyPropertyValues <CohortEnumLink>(link, existsLink)) { dbContext.CohortEnumLink.Update(existsLink); dbContext.SaveChanges(); } } } }
public void Generate(string cohortId) { List <CohortEnumLink> links = new List <CohortEnumLink>(); using (var dbCohortContext = new MedialynxDbCohortEnumsContext()) { foreach (CohortEnums enumItem in dbCohortContext.CohortEnums) { switch (enumItem.Id) { case CohortEnumsDictionary.DiseaseStates: using (var dbDiseaseStatesContext = new MedialynxDbDiseaseStatesContext()) { links.AddRange(ExistingOptionsAsLink <DiseaseStates>(new List <DiseaseStates>(dbDiseaseStatesContext.DiseaseStates), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.GeneticMatches: using (var dbGeneticMatchesContext = new MedialynxDbGeneticMatchesContext()) { links.AddRange(ExistingOptionsAsLink <GeneticMatches>(new List <GeneticMatches>(dbGeneticMatchesContext.GeneticMatches), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.Biomarkers: using (var dbBiomarkersContext = new MedialynxDbBiomarkersContext()) { links.AddRange(ExistingOptionsAsLink <Biomarkers>(new List <Biomarkers>(dbBiomarkersContext.Biomarkers), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.Demographics: using (var dbDemographicsContext = new MedialynxDbDemographicsContext()) { links.AddRange(ExistingOptionsAsLink <Demographics>(new List <Demographics>(dbDemographicsContext.Demographics), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.Ethnicitys: using (var dbEthnicitysContext = new MedialynxDbEthnicitysContext()) { links.AddRange(ExistingOptionsAsLink <Ethnicitys>(new List <Ethnicitys>(dbEthnicitysContext.Ethnicitys), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.StageOfDiseases: using (var dbStageOfDiseasesContext = new MedialynxDbStageOfDiseasesContext()) { links.AddRange(ExistingOptionsAsLink <StageOfDiseases>(new List <StageOfDiseases>(dbStageOfDiseasesContext.StageOfDiseases), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.Prognosis: using (var dbPrognosisContext = new MedialynxDbPrognosisContext()) { links.AddRange(ExistingOptionsAsLink <Prognosis>(new List <Prognosis>(dbPrognosisContext.Prognosis), cohortId, enumItem.Id)); } break; case CohortEnumsDictionary.PreviousTreatments: using (var dbPreviousTreatmentsContext = new MedialynxDbPreviousTreatmentsContext()) { links.AddRange(ExistingOptionsAsLink <PreviousTreatments>(new List <PreviousTreatments>(dbPreviousTreatmentsContext.PreviousTreatments), cohortId, enumItem.Id)); } break; } } using (var dbContext = new MedialynxDbCohortEnumLinkContext()) { dbContext.CohortEnumLink.AddRange(links); dbContext.SaveChanges(); } } }