Exemplo n.º 1
0
        public override void Load(DbAdapterContainer dbAdapterContainer)
        {
            FaultLocationData.FaultGroupDataTable   faultGroupTable;
            FaultLocationData.FaultSegmentDataTable faultSegmentTable;
            FaultLocationData.FaultCurveDataTable   faultCurveTable;
            FaultLocationData.FaultSummaryDataTable faultSummaryTable;

            m_faultSummarizer.FillTables(dbAdapterContainer);

            faultGroupTable   = m_faultSummarizer.FaultGroupTable;
            faultSegmentTable = m_faultSummarizer.FaultSegmentTable;
            faultCurveTable   = m_faultSummarizer.FaultCurveTable;
            faultSummaryTable = m_faultSummarizer.FaultSummaryTable;

            if (faultSegmentTable.Count == 0 && faultCurveTable.Count == 0 && faultSummaryTable.Count == 0)
            {
                return;
            }

            Log.Info("Loading fault data into the database...");

            BulkLoader bulkLoader = new BulkLoader();

            bulkLoader.Connection     = dbAdapterContainer.Connection;
            bulkLoader.CommandTimeout = dbAdapterContainer.CommandTimeout;
            bulkLoader.Load(faultGroupTable);
            bulkLoader.Load(faultSegmentTable);
            bulkLoader.Load(faultCurveTable);
            bulkLoader.Load(faultSummaryTable);

            Log.Info(string.Format("Loaded {0} faults into the database.", faultSummaryTable.Count));
        }
Exemplo n.º 2
0
        public override void Load(DbAdapterContainer dbAdapterContainer)
        {
            FaultLocationData.FaultGroupDataTable   faultGroupTable;
            FaultLocationData.FaultSegmentDataTable faultSegmentTable;
            FaultLocationData.FaultCurveDataTable   faultCurveTable;
            FaultLocationData.FaultSummaryDataTable faultSummaryTable;

            m_faultSummarizer.FillTables(dbAdapterContainer);

            faultGroupTable   = m_faultSummarizer.FaultGroupTable;
            faultSegmentTable = m_faultSummarizer.FaultSegmentTable;
            faultCurveTable   = m_faultSummarizer.FaultCurveTable;
            faultSummaryTable = m_faultSummarizer.FaultSummaryTable;

            if (faultSegmentTable.Count == 0 && faultCurveTable.Count == 0 && faultSummaryTable.Count == 0)
            {
                return;
            }

            Log.Info("Loading fault data into the database...");

            using (SqlBulkCopy bulkCopy = new SqlBulkCopy(dbAdapterContainer.Connection))
            {
                // Set timeout to infinite
                bulkCopy.BulkCopyTimeout = 0;

                // Submit fault groups to the database
                bulkCopy.DestinationTableName = faultGroupTable.TableName;
                bulkCopy.WriteToServer(faultGroupTable);

                // Submit fault segments to the database
                bulkCopy.DestinationTableName = faultSegmentTable.TableName;
                bulkCopy.WriteToServer(faultSegmentTable);

                // Submit fault curves to the database
                bulkCopy.DestinationTableName = faultCurveTable.TableName;
                bulkCopy.WriteToServer(faultCurveTable);

                // Submit fault summary records to the database
                bulkCopy.DestinationTableName = faultSummaryTable.TableName;
                bulkCopy.WriteToServer(faultSummaryTable);
            }

            Log.Info(string.Format("Loaded {0} faults into the database.", faultSummaryTable.Count));
        }