Ejemplo n.º 1
0
        private void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            AddToDatabase addToDatabase = new AddToDatabase();

            for (int switchvar = 0; switchvar < 17; switchvar++)
            {
                if (worker.CancellationPending)
                {
                    MessageBoxResult result =
                        MessageBox.Show(
                            "Do you want to cancel this task? Cancelling could cause issue with the database file",
                            "Cancel Operation", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
                    if (result == MessageBoxResult.Yes)
                    {
                        e.Cancel = true;
                        return;
                    }
                }

                switch (switchvar)
                {
                case 0:
                    addToDatabase.fetch_vn_basic();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 1:
                    addToDatabase.fetch_vn_details();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 2:
                    addToDatabase.fetch_vn_relations();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 3:
                    addToDatabase.fetch_vn_stats();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 4:
                    addToDatabase.fetch_vn_screens();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 5:
                    addToDatabase.fetch_releases();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 6:
                    addToDatabase.fetch_characters();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 7:
                    addToDatabase.fetch_tags();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 8:
                    addToDatabase.fetch_traits();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 9:
                    addToDatabase.AddNovelData();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 10:
                    addToDatabase.AddNovelCategory();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 11:
                    addToDatabase.AddVnApi();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 12:
                    addToDatabase.AddVnRelations();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 13:
                    addToDatabase.AddVnTags();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 14:
                    addToDatabase.AddReleaseApi();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 15:
                    addToDatabase.AddCharacterApi();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;

                case 16:
                    addToDatabase.AddCharacterTraits();
                    (sender as BackgroundWorker).ReportProgress(switchvar);
                    break;
                }
                Thread.Sleep(220);
            }
        }