コード例 #1
0
        public static ClinicalTrialsContext AddToContextJSON(ClinicalTrialsContext context, ClinicalTrialJSON entity,
                                                             int count, int commitCount, bool recreateContext)
        {
            //context.Set<ClinicalTrialJSON>().Add(entity);

            if (count % commitCount == 0)
            {
                try
                {
                    context.SaveChanges();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.InnerException);
                }
                if (recreateContext)
                {
                    context.Dispose();
                    context = new ClinicalTrialsContext();

                    context.ChangeTracker.AutoDetectChangesEnabled = false;
                }
            }

            return(context);
        }
コード例 #2
0
        public static void DeleteOldJSONDb()
        {
            ClinicalTrialsContext db = new ClinicalTrialsContext();

            using (db)
            {
                db.Database.ExecuteSqlCommand("delete from [JSONStudy]");
            }
        }
コード例 #3
0
 public RepositoryBase(ClinicalTrialsContext repositoryContext)
 {
     this.RepositoryContext = repositoryContext;
 }
コード例 #4
0
 public StudyStructureRepository(ClinicalTrialsContext repositoryContext) : base(repositoryContext)
 {
 }
コード例 #5
0
        public static void DeleteOldDb()
        {
            ClinicalTrialsContext db = new ClinicalTrialsContext();

            using (db)
            {
                db.Database.ExecuteSqlCommand("delete from [Studies]");
                db.Database.ExecuteSqlCommand("delete from [FullStudy]");
                db.Database.ExecuteSqlCommand("delete from [Study]");
                db.Database.ExecuteSqlCommand("delete from [ProtocolSection]");
                db.Database.ExecuteSqlCommand("delete from[DerivedSection]");
                db.Database.ExecuteSqlCommand("delete from[IdentificationModule]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryIdInfo]");
                db.Database.ExecuteSqlCommand("delete from[StatusModule]");
                db.Database.ExecuteSqlCommand("delete from[MiscInfoModule]");
                db.Database.ExecuteSqlCommand("delete from[ConditionsModule]");
                db.Database.ExecuteSqlCommand("delete from[DescriptionModule]");
                Console.WriteLine("deleting from conditions..");
                db.Database.ExecuteSqlCommand("delete from[ConditionBrowseModule]");
                db.Database.ExecuteSqlCommand("delete from[ArmsInterventionsModule]");
                db.Database.ExecuteSqlCommand("delete from[DescriptionModule]");
                db.Database.ExecuteSqlCommand("delete from[Intervention]");
                db.Database.ExecuteSqlCommand("delete from[InterventionList]");
                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseModule]");
                db.Database.ExecuteSqlCommand("delete from[InterventionMesh]");
                db.Database.ExecuteSqlCommand("delete from[DesignModule]");
                db.Database.ExecuteSqlCommand("delete from[DesignInfo]");
                db.Database.ExecuteSqlCommand("delete from[DesignObservationalModelList]");
                db.Database.ExecuteSqlCommand("delete from[DesignTimePerspectiveList]");

                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseBranch]");
                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseBranch]");
                db.Database.ExecuteSqlCommand("delete from[ConditionMesh]");
                db.Database.ExecuteSqlCommand("delete from[ConditionList]");
                db.Database.ExecuteSqlCommand("delete from[InterventionMeshList]");
                db.Database.ExecuteSqlCommand("delete from[KeywordList]");
                db.Database.ExecuteSqlCommand("delete from[PhaseList]");
                Console.WriteLine("deleting from phase list..");
                db.Database.ExecuteSqlCommand("delete from[InterventionAncestor]");
                db.Database.ExecuteSqlCommand("delete from[InterventionAncestorList]");
                db.Database.ExecuteSqlCommand("delete from[OrgStudyIdInfo]");
                db.Database.ExecuteSqlCommand("delete from[Organization]");
                db.Database.ExecuteSqlCommand("delete from[Location]");
                db.Database.ExecuteSqlCommand("delete from[LocationContact]");
                db.Database.ExecuteSqlCommand("delete from[LocationContactList]");
                db.Database.ExecuteSqlCommand("delete from[DesignMaskingInfo]");
                db.Database.ExecuteSqlCommand("delete from[BioSpec]");
                db.Database.ExecuteSqlCommand("delete from[EnrollmentInfo]");
                db.Database.ExecuteSqlCommand("delete from[ExpandedAccessTypes]");
                db.Database.ExecuteSqlCommand("delete from[ExpandedAccessInfo]");
                db.Database.ExecuteSqlCommand("delete from[DesignWhoMaskedList]");
                db.Database.ExecuteSqlCommand("delete from[EligibilityModule]");
                db.Database.ExecuteSqlCommand("delete from[ConditionBrowseLeaf]");
                db.Database.ExecuteSqlCommand("delete from[ConditionBrowseLeafList]");
                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseLeaf]");
                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseBranchList]");
                db.Database.ExecuteSqlCommand("delete from[ContactsLocationsModule]");
                db.Database.ExecuteSqlCommand("delete from[SponsorCollaboratorsModule]");
                db.Database.ExecuteSqlCommand("delete from[LeadSponsor]");
                db.Database.ExecuteSqlCommand("delete from[ConditionAncestor]");
                db.Database.ExecuteSqlCommand("delete from[ConditionAncestorList]");
                db.Database.ExecuteSqlCommand("delete from[ConditionMeshList]");
                db.Database.ExecuteSqlCommand("delete from[ConditionBrowseBranch]");
                db.Database.ExecuteSqlCommand("delete from[LocationList]");
                db.Database.ExecuteSqlCommand("delete from[OverallOfficial]");
                db.Database.ExecuteSqlCommand("delete from[OverallOfficialList]");
                db.Database.ExecuteSqlCommand("delete from[CentralContact]");
                db.Database.ExecuteSqlCommand("delete from[CentralContactList]");
                db.Database.ExecuteSqlCommand("delete from[InterventionBrowseLeafList]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryIdInfoList]");
                db.Database.ExecuteSqlCommand("delete from[StdAgeList]");
                db.Database.ExecuteSqlCommand("delete from[StudyFirstPostDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[LastUpdatePostDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[ConditionBrowseBranchList]");
                db.Database.ExecuteSqlCommand("delete from[Collaborator]");
                db.Database.ExecuteSqlCommand("delete from[CollaboratorList]");
                db.Database.ExecuteSqlCommand("delete from[ResponsibleParty]");
                db.Database.ExecuteSqlCommand("delete from[CompletionDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[NCTIdAliasList]");
                db.Database.ExecuteSqlCommand("delete from[ResultsFirstPostDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[PrimaryCompletionDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[StartDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryIdInfo]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryIdInfoList]");
                db.Database.ExecuteSqlCommand("delete from[CompletionDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[DispFirstPostDateStruct]");
                db.Database.ExecuteSqlCommand("delete from[RemovedCountryList]");


                Console.WriteLine("deleting from references module..");
                db.Database.ExecuteSqlCommand("delete from[ReferencesModule]");
                db.Database.ExecuteSqlCommand("delete from[Reference]");
                db.Database.ExecuteSqlCommand("delete from[ReferenceList]");
                db.Database.ExecuteSqlCommand("delete from[SeeAlsoLink]");
                db.Database.ExecuteSqlCommand("delete from[SeeAlsoLinkList]");
                db.Database.ExecuteSqlCommand("delete from[AvailIPD]");
                db.Database.ExecuteSqlCommand("delete from[AvailIPDList]");

                Console.WriteLine("deleting from outcomes module..");
                db.Database.ExecuteSqlCommand("delete from[OutcomesModule]");
                db.Database.ExecuteSqlCommand("delete from[PrimaryOutcome]");
                db.Database.ExecuteSqlCommand("delete from[PrimaryOutcomeList]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryOutcome]");
                db.Database.ExecuteSqlCommand("delete from[SecondaryOutcomeList]");
                db.Database.ExecuteSqlCommand("delete from[OtherOutcome]");
                db.Database.ExecuteSqlCommand("delete from[OtherOutcomeList]");

                Console.WriteLine("deleting from oversight module..");
                db.Database.ExecuteSqlCommand("delete from[OversightModule]");

                Console.WriteLine("deleting from annotation module..");
                db.Database.ExecuteSqlCommand("delete from[AnnotationSection]");
                db.Database.ExecuteSqlCommand("delete from[AnnotationModule]");
                db.Database.ExecuteSqlCommand("delete from[UnpostedAnnotation]");
                db.Database.ExecuteSqlCommand("delete from[UnpostedEvent]");
                db.Database.ExecuteSqlCommand("delete from[UnpostedEventList]");

                Console.WriteLine("deleting from arms..");
                db.Database.ExecuteSqlCommand("delete from[ArmGroup]");
                db.Database.ExecuteSqlCommand("delete from[ArmGroupList]");
                db.Database.ExecuteSqlCommand("delete from[ArmGroupInterventionList]");
                db.Database.ExecuteSqlCommand("delete from[ArmsInterventionsModule]");

                Console.WriteLine("deleting from large document module..");
                db.Database.ExecuteSqlCommand("delete from[DocumentSection]");
                db.Database.ExecuteSqlCommand("delete from[LargeDocumentModule]");
                db.Database.ExecuteSqlCommand("delete from[LargeDoc]");
                db.Database.ExecuteSqlCommand("delete from[LargeDocList]");

                Console.WriteLine("deleting from ipd module..");
                db.Database.ExecuteSqlCommand("delete from[IPDSharingStatementModule]");
                db.Database.ExecuteSqlCommand("delete from[IPDSharingInfoTypeList]");

                Console.WriteLine("deleting from results section..");
                db.Database.ExecuteSqlCommand("delete from[ResultsSection]");

                db.Database.ExecuteSqlCommand("delete from[MoreInfoModule]");
                db.Database.ExecuteSqlCommand("delete from[CertainAgreement]");
                db.Database.ExecuteSqlCommand("delete from[LimitationsAndCaveats]");
                db.Database.ExecuteSqlCommand("delete from[PointOfContact]");
                db.Database.ExecuteSqlCommand("delete from[FlowGroup]");
                db.Database.ExecuteSqlCommand("delete from[FlowAchievement]");
                db.Database.ExecuteSqlCommand("delete from[FlowMilestone]");
                db.Database.ExecuteSqlCommand("delete from[FlowReason]");
                db.Database.ExecuteSqlCommand("delete from[FlowDropWithdraw]");
                db.Database.ExecuteSqlCommand("delete from[FlowPeriod]");
                db.Database.ExecuteSqlCommand("delete from[ParticipantFlowModule]");
                db.Database.ExecuteSqlCommand("delete from[FlowGroupList]");
                db.Database.ExecuteSqlCommand("delete from[FlowPeriodList]");
                db.Database.ExecuteSqlCommand("delete from[FlowDropWithdrawList]");
                db.Database.ExecuteSqlCommand("delete from[FlowReasonList]");
                db.Database.ExecuteSqlCommand("delete from[FlowMilestoneList]");
                db.Database.ExecuteSqlCommand("delete from[FlowAchievementList]");


                db.Database.ExecuteSqlCommand("delete from[OutcomeMeasuresModule]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeCategory]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeAnalysis]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeAnalysisGroupIdList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClass]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClassDenom]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeDenom]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeDenomCount]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClassDenomCount]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeGroup]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeMeasure]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeMeasurement]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeMeasurementList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeCategoryList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeAnalysisList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeDenomCountList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClassDenomCountList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeGroupList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClassDenomList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeDenomList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeClassList]");
                db.Database.ExecuteSqlCommand("delete from[OutcomeMeasureList]");

                Console.WriteLine("deleting from adverse module..");
                db.Database.ExecuteSqlCommand("delete from[AdverseEventsModule]");
                db.Database.ExecuteSqlCommand("delete from[EventGroup]");
                db.Database.ExecuteSqlCommand("delete from[EventGroupList]");
                db.Database.ExecuteSqlCommand("delete from[SeriousEvent]");
                db.Database.ExecuteSqlCommand("delete from[SeriousEventStats]");
                db.Database.ExecuteSqlCommand("delete from[SeriousEventStatsList]");
                db.Database.ExecuteSqlCommand("delete from[SeriousEventList]");
                db.Database.ExecuteSqlCommand("delete from[OtherEvent]");
                db.Database.ExecuteSqlCommand("delete from[OtherEventStats]");
                db.Database.ExecuteSqlCommand("delete from[OtherEventStatsList]");
                db.Database.ExecuteSqlCommand("delete from[OtherEventList]");


                Console.WriteLine("deleting from baseline characteristics module..");
                db.Database.ExecuteSqlCommand("delete from[BaselineCharacteristicsModule]");
                db.Database.ExecuteSqlCommand("delete from[BaselineGroup]");
                db.Database.ExecuteSqlCommand("delete from[BaselineDenomCount]");
                db.Database.ExecuteSqlCommand("delete from[BaselineDenom]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasure]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasureDenom]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasureDenomCount]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClass]");
                db.Database.ExecuteSqlCommand("delete from[BaselineCategory]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClassDenom]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClassDenomCount]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasureList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasurement]");
                db.Database.ExecuteSqlCommand("delete from[BaselineDenomCountList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasureDenomCountList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClassDenomCountList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasureDenomList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineDenomList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineGroupList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClassDenomList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineClassList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineCategoryList]");
                db.Database.ExecuteSqlCommand("delete from[BaselineMeasurementList]");

                db.Database.ExecuteSqlCommand("delete from[Retraction]");
                db.Database.ExecuteSqlCommand("delete from[RetractionList]");

                var modelNames = db.Model.GetEntityTypes();
                foreach (var modelName in modelNames)
                {
                    string tableName = modelName.Name.Split('.')[1];
                    if (tableName.Equals("Root"))
                    {
                        tableName = "Studies";
                    }
                    else if (tableName.Equals("CityCoordinates") ||
                             tableName.Equals("Tag") ||
                             tableName.Equals("TagList") ||
                             tableName.Equals("__EFMigrationsHistory") ||
                             tableName.Equals("StatisticsSearch") ||
                             tableName.Equals("JSONStudy"))
                    {
                        continue;
                    }
                    //db.Database.ExecuteSqlCommand("delete from[" + tableName +"]");
                    try
                    {
                        db.Database.ExecuteSqlCommand("DBCC CHECKIDENT([" + tableName + "], RESEED, 1)");
                    } catch (Exception e)
                    {
                        continue;
                    }
                }
            }
        }
コード例 #6
0
        public static void WriteToDB()
        {
            //SetConnectionString();

            ClinicalTrialsContext context = null;

            try
            {
                context = new ClinicalTrialsContext();

                try
                {
                    foreach (string m in context.Database.GetMigrations())
                    {
                        Console.WriteLine(m);
                    }
                    context.Database.Migrate();
                } catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }

                DeleteOldDb();

                context.ChangeTracker.AutoDetectChangesEnabled = false;

                int count = 0;


                using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Read))
                {
                    Console.WriteLine("Reading from zip in progress...");

                    //int countZip = 0;

                    foreach (ZipArchiveEntry entry in archive.Entries)
                    {
                        //if (countZip <= numFiles){
                        if (entry.FullName.EndsWith(".json", StringComparison.OrdinalIgnoreCase))
                        {
                            using (StreamReader reader = new StreamReader(entry.Open()))
                            {
                                String json = reader.ReadToEnd();
                                Root   item = JsonConvert.DeserializeObject <Root>(json);
                                ++count;
                                context = AddToContext(context, item, count, commitCount, true);
                            }
                            Console.WriteLine(entry.FullName + " - " + count);

                            //countZip++;
                        }
                    }
                }
                context.SaveChanges();
            }
            finally
            {
                if (context != null)
                {
                    context.Dispose();
                }
            }

            Console.WriteLine("Writing complete.");
            Console.ReadLine();
        }
コード例 #7
0
        public static void WriteToDBJSON()
        {
            ClinicalTrialsContext context = null;

            try
            {
                context = new ClinicalTrialsContext();
                try
                {
                    foreach (string m in context.Database.GetMigrations())
                    {
                        Console.WriteLine(m);
                    }
                    context.Database.Migrate();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
                DeleteOldJSONDb();

                context.ChangeTracker.AutoDetectChangesEnabled = false;

                int count = 0;

                using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Read))
                {
                    Console.WriteLine("Reading from zip in progress...");

                    //int countZip = 0;

                    foreach (ZipArchiveEntry entry in archive.Entries)
                    {
                        if (entry.FullName.EndsWith(".json", StringComparison.OrdinalIgnoreCase))
                        {
                            using (StreamReader reader = new StreamReader(entry.Open()))
                            {
                                String            json  = reader.ReadToEnd();
                                dynamic           trial = JsonConvert.DeserializeObject <dynamic>(json);
                                ClinicalTrialJSON item  = new ClinicalTrialJSON();
                                item.NCTId = trial.FullStudy.Study.ProtocolSection.IdentificationModule.NCTId;
                                item.JSON  = json;
                                context    = AddToContextJSON(context, item, count, commitCount, true);
                            }
                            Console.WriteLine(entry.FullName + " - " + ++count);
                        }
                    }
                }
                context.SaveChanges();

                Console.WriteLine("Writing complete.");
                Console.ReadLine();
            } catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            finally
            {
                if (context != null)
                {
                    context.Dispose();
                }
            }
        }
コード例 #8
0
        //public IJSONRepository JSONRepository
        //{
        //    get
        //    {
        //        if (_jsonRepository == null)
        //        {
        //            _jsonRepository = new JSONRepository(_jsonContext);
        //        }
        //        return _jsonRepository;
        //    }
        //}

        public RepositoryWrapper(ClinicalTrialsContext repositoryContext)
        {
            _repoContext = repositoryContext;
        }
コード例 #9
0
 public StatisticsSearchRepository(ClinicalTrialsContext repositoryContext) : base(repositoryContext)
 {
 }
コード例 #10
0
 public TagListRepository(ClinicalTrialsContext repositoryContext) : base(repositoryContext)
 {
 }