private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            DateTime    processStartDate     = DateTime.Now;
            DateTime?   lastProcessStartDate = null;
            QueryRunner queryRunner          = (QueryRunner)e.Argument;

            try
            {
                SyncTaskStatus syncTaskStatus = SyncTasksManager.GetInstance().GetLastSyncTaskStatus(queryRunner.Task);
                if (syncTaskStatus != null)
                {
                    lastProcessStartDate = syncTaskStatus.StartTime;
                }
                SyncTasksManager.GetInstance().SaveProcessStatus(queryRunner.Task.ProcessID, "Exporting items", null);
                SyncTasksManager.GetInstance().ExportSyncTaskItems(queryRunner.Task, true, true, true, queryRunner.backgroundWorker, lastProcessStartDate, 0);
                SyncTasksManager.GetInstance().SaveProcessStatus(queryRunner.Task.ProcessID, "Processing export items", null);
                SyncTasksManager.GetInstance().ProcessSyncTaskExportFiles(queryRunner.Task, queryRunner.backgroundWorker);
                SyncTasksManager.GetInstance().SaveProcessStatus(queryRunner.Task.ProcessID, "Importing items", null);
                SyncTasksManager.GetInstance().ImportSyncTaskItems(queryRunner.Task, queryRunner.Task.ShouldSkipUpdates, new string[] { }, queryRunner.backgroundWorker);
                SyncTasksManager.GetInstance().SaveSyncTaskStatus(queryRunner.Task, processStartDate, DateTime.Now, true, string.Empty);
            }
            catch (Exception ex)
            {
                Logger.Error(ex, "QueryRunner");
                SyncTasksManager.GetInstance().SaveProcessStatus(queryRunner.Task.ProcessID, "Failed, check log", null);
            }

            queryRunner.State = RunnerState.Complete;
        }
示例#2
0
        private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            DateTime       processStartDate     = DateTime.Now;
            DateTime?      lastProcessStartDate = null;
            QueryRunner    queryRunner          = (QueryRunner)e.Argument;
            SyncTaskStatus syncTaskStatus       = SyncTasksManager.GetInstance().GetLastSyncTaskStatus(queryRunner.Task);

            if (syncTaskStatus != null)
            {
                lastProcessStartDate = syncTaskStatus.StartTime;
            }
            SyncTasksManager.GetInstance().ExportSyncTaskItems(queryRunner.Task, true, true, true, queryRunner.backgroundWorker, lastProcessStartDate, 0);
            SyncTasksManager.GetInstance().ProcessSyncTaskExportFiles(queryRunner.Task, queryRunner.backgroundWorker);
            SyncTasksManager.GetInstance().ImportSyncTaskItems(queryRunner.Task, queryRunner.Task.ShouldSkipUpdates, new string[] { }, queryRunner.backgroundWorker);
            SyncTasksManager.GetInstance().SaveSyncTaskStatus(queryRunner.Task, processStartDate, DateTime.Now, true, string.Empty);
            queryRunner.State = RunnerState.Complete;
        }