private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) { int i; string operation = ""; AbstractBase obj = null; if (e.Argument != null) { operation = e.Argument.ToString(); } backgroundWorker.ReportProgress(0, new BGReport("Connecting to SoccerBase (Operation: " + operation + ") ...")); using (SqlConnection connection = new SqlConnection(MainForm.STRCONN)) { connection.Open(); switch (operation) { case "Ivnet": obj = new BackgroundWorks.IvnetNS.Ivnet(); obj.Links = new Dictionary <string, string[]>() { { "Belgium,Pro League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/belgium/belgium.htm", "" } }, { "Denmark,Superligaen,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/denmark/denmark.htm", "" } }, { "England,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/england/england.htm", "" } }, { "France,Ligue 1,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/france/france.htm", "" } }, { "Germany,Bundesliga,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/germany/germany.htm", "" } }, { "Greece,Super League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/greece/greece.htm", "" } }, { "Netherlands,Eredivisie,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/nether/nether.htm", "" } }, { "Italy,Serie A,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/italy/italy.htm", "" } }, { "Portugal,Liga Zon Sagres,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/portugal/portugal.htm", "" } }, { "Romania,First Division,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/romania/romania.htm", "" } }, { "Russia,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/russia/russia.htm", "" } }, //{"Scotland,Premier League,2011/12", new string[] {"http://invarius.ivnet.ru/soccer/champ/scotland/scotland.htm",""}}, { "Spain,Primera Division,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/spain/spain.htm", "" } }, { "Turkey,Super Lig,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/turkey/turkey.htm", "" } }, { "Ukraine,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/ukraine/ukraine.htm", "" } } }; obj.Connection = connection; obj.Table = "Ivnet"; while (obj.enrLinks.MoveNext()) { double percent = (double)(obj.Index + 1) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(obj.ProcessLink())); } break; case "NewIvnet": BackgroundWorks.IvnetNS.Ivnet newIvnet = new BackgroundWorks.IvnetNS.Ivnet(); newIvnet.Links = new Dictionary <string, string[]>() { { "New matches", new string[] { "http://invarius.ivnet.ru/soccer/champ/champ.htm", "" } } }; newIvnet.Connection = connection; newIvnet.isNew = true; if (newIvnet.enrLinks.MoveNext()) { backgroundWorker.ReportProgress(100, new BGReport(newIvnet.ProcessLink())); } break; case "SportRadar": obj = new SportRadar(); obj.Links = new Dictionary <string, string[]>() { { "Belgium,Pro League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_33,22_1,5_3414,9_fixtures,231_full,23_1", "" } }, { "Denmark,Superligaen,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_8,22_1,5_3376,9_fixtures,231_full,23_1", "" } }, { "England,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_1,22_1,5_3391,9_fixtures,231_full,23_1", "" } }, { "France,Ligue 1,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_7,22_1,5_3380,9_fixtures,231_full,23_1", "" } }, { "Germany,Bundesliga,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_30,22_1,5_3405,9_fixtures,231_full,23_1", "" } }, { "Greece,Super League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_67,22_1,5_3735,9_fixtures,231_full,23_1", "" } }, { "Italy,Serie A,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_31,22_1,5_3639,9_fixtures,231_full,23_1", "" } }, { "Netherlands,Eredivisie,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_35,22_1,5_3432,9_fixtures,231_full,23_1", "" } }, { "Portugal,Liga Zon Sagres,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_44,22_1,5_3462,9_fixtures,231_full,23_1", "" } }, { "Romania,First Division,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_77,22_1,5_3539,9_fixtures,231_full,23_1", "" } }, { "Russia,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_21,22_1,5_3288,9_fixtures,231_full,23_1", "" } }, //{"Scotland,Premier League,2011/12", new string[] { // "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_22,22_1,5_3392,9_fixtures,231_full,23_2","" //}}, { "Spain,Primera Division,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_32,22_1,5_3502,9_fixtures,231_full,23_1", "" } }, { "Turkey,Super Lig,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_46,22_1,5_3831,9_fixtures,231_full,23_1", "" } }, { "Ukraine,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_86,22_1,5_3390,9_fixtures,231_full,23_1", "" } } }; obj.Connection = connection; obj.Table = "SportRadar"; while (obj.enrLinks.MoveNext()) { double percent = (double)(obj.Index + 1) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(obj.ProcessLink())); } break; case "Link": BackgroundWorks.IvnetNS.Link link = new BackgroundWorks.IvnetNS.Link(); link.Connection = connection; link.process(); break; /* ------------------------------------------------------------------------ */ case "Truncate": SqlCommand sql = new SqlCommand("TRUNCATE TABLE dbo.archive", connection); backgroundWorker.ReportProgress(10, new BGReport("Truncating archive ...")); sql.ExecuteNonQuery(); sql = new SqlCommand("TRUNCATE TABLE dbo.Leagues", connection); backgroundWorker.ReportProgress(40, new BGReport("Truncating Leagues ...")); sql.ExecuteNonQuery(); sql = new SqlCommand("TRUNCATE TABLE dbo.history", connection); backgroundWorker.ReportProgress(70, new BGReport("Truncating history ...")); sql.ExecuteNonQuery(); break; case "Archive": obj = new SportRadar(); obj.Links = archiveLinks; obj.Table = "archive"; obj.Connection = connection; i = 1; while (obj.enrLinks.MoveNext()) { double percent = (double)(i++) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(" " + obj.ProcessLink())); } break; case "Leagues": Leagues leagues = new Leagues(); leagues.Connection = connection; backgroundWorker.ReportProgress(10, new BGReport("Processing Leagues ...")); leagues.process(); break; case "History": History history = new History(); History.mainForm = this; history.Connection = connection; openExcel(); history.process(); closeExcel(); break; case "PrevAvgStrength": PrevAvgStrength strength = new PrevAvgStrength(); PrevAvgStrength.mainForm = this; strength.Connection = connection; openExcel(); strength.process(); closeExcel(); break; } } }
private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) { int i; string operation = ""; AbstractBase obj = null; if (e.Argument != null) operation = e.Argument.ToString(); backgroundWorker.ReportProgress(0, new BGReport("Connecting to SoccerBase (Operation: " + operation + ") ...")); using (SqlConnection connection = new SqlConnection(MainForm.STRCONN)) { connection.Open(); switch (operation) { case "Ivnet": obj = new BackgroundWorks.IvnetNS.Ivnet(); obj.Links = new Dictionary<string, string[]>(){ {"Belgium,Pro League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/belgium/belgium.htm","" }}, {"Denmark,Superligaen,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/denmark/denmark.htm","" }}, {"England,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/england/england.htm","" }}, {"France,Ligue 1,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/france/france.htm","" }}, {"Germany,Bundesliga,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/germany/germany.htm","" }}, {"Greece,Super League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/greece/greece.htm","" }}, {"Netherlands,Eredivisie,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/nether/nether.htm","" }}, {"Italy,Serie A,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/italy/italy.htm","" }}, {"Portugal,Liga Zon Sagres,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/portugal/portugal.htm","" }}, {"Romania,First Division,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/romania/romania.htm","" }}, {"Russia,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/russia/russia.htm","" }}, //{"Scotland,Premier League,2011/12", new string[] {"http://invarius.ivnet.ru/soccer/champ/scotland/scotland.htm",""}}, {"Spain,Primera Division,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/spain/spain.htm","" }}, {"Turkey,Super Lig,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/turkey/turkey.htm","" }}, {"Ukraine,Premier League,2011/12", new string[] { "http://invarius.ivnet.ru/soccer/champ/ukraine/ukraine.htm","" }} }; obj.Connection = connection; obj.Table = "Ivnet"; while (obj.enrLinks.MoveNext()) { double percent = (double)(obj.Index + 1) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(obj.ProcessLink())); } break; case "NewIvnet": BackgroundWorks.IvnetNS.Ivnet newIvnet = new BackgroundWorks.IvnetNS.Ivnet(); newIvnet.Links = new Dictionary<string, string[]>() { {"New matches",new string[] {"http://invarius.ivnet.ru/soccer/champ/champ.htm",""}} }; newIvnet.Connection = connection; newIvnet.isNew = true; if (newIvnet.enrLinks.MoveNext()) backgroundWorker.ReportProgress(100, new BGReport(newIvnet.ProcessLink())); break; case "SportRadar": obj = new SportRadar(); obj.Links = new Dictionary<string,string[]>(){ {"Belgium,Pro League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_33,22_1,5_3414,9_fixtures,231_full,23_1","" }}, {"Denmark,Superligaen,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_8,22_1,5_3376,9_fixtures,231_full,23_1","" }}, {"England,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_1,22_1,5_3391,9_fixtures,231_full,23_1","" }}, {"France,Ligue 1,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_7,22_1,5_3380,9_fixtures,231_full,23_1","" }}, {"Germany,Bundesliga,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_30,22_1,5_3405,9_fixtures,231_full,23_1","" }}, {"Greece,Super League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_67,22_1,5_3735,9_fixtures,231_full,23_1","" }}, {"Italy,Serie A,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_31,22_1,5_3639,9_fixtures,231_full,23_1","" }}, {"Netherlands,Eredivisie,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_35,22_1,5_3432,9_fixtures,231_full,23_1","" }}, {"Portugal,Liga Zon Sagres,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_44,22_1,5_3462,9_fixtures,231_full,23_1","" }}, {"Romania,First Division,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_77,22_1,5_3539,9_fixtures,231_full,23_1","" }}, {"Russia,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_21,22_1,5_3288,9_fixtures,231_full,23_1","" }}, //{"Scotland,Premier League,2011/12", new string[] { // "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_22,22_1,5_3392,9_fixtures,231_full,23_2","" //}}, {"Spain,Primera Division,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_32,22_1,5_3502,9_fixtures,231_full,23_1","" }}, {"Turkey,Super Lig,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_46,22_1,5_3831,9_fixtures,231_full,23_1","" }}, {"Ukraine,Premier League,2011/12", new string[] { "http://stats.betradar.com/s4/gismo.php?&html=1&id=1827&clientid=4&state=2_1,3_86,22_1,5_3390,9_fixtures,231_full,23_1","" }} }; obj.Connection = connection; obj.Table = "SportRadar"; while (obj.enrLinks.MoveNext()) { double percent = (double)(obj.Index + 1) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(obj.ProcessLink())); } break; case "Link": BackgroundWorks.IvnetNS.Link link = new BackgroundWorks.IvnetNS.Link(); link.Connection = connection; link.process(); break; /* ------------------------------------------------------------------------ */ case "Truncate": SqlCommand sql = new SqlCommand("TRUNCATE TABLE dbo.archive", connection); backgroundWorker.ReportProgress(10, new BGReport("Truncating archive ...")); sql.ExecuteNonQuery(); sql = new SqlCommand("TRUNCATE TABLE dbo.Leagues", connection); backgroundWorker.ReportProgress(40, new BGReport("Truncating Leagues ...")); sql.ExecuteNonQuery(); sql = new SqlCommand("TRUNCATE TABLE dbo.history", connection); backgroundWorker.ReportProgress(70, new BGReport("Truncating history ...")); sql.ExecuteNonQuery(); break; case "Archive": obj = new SportRadar(); obj.Links = archiveLinks; obj.Table = "archive"; obj.Connection = connection; i = 1; while (obj.enrLinks.MoveNext()) { double percent = (double)(i++) / obj.Links.Count * 100; backgroundWorker.ReportProgress((int)percent, new BGReport(" " + obj.ProcessLink())); } break; case "Leagues": Leagues leagues = new Leagues(); leagues.Connection = connection; backgroundWorker.ReportProgress(10, new BGReport("Processing Leagues ...")); leagues.process(); break; case "History": History history = new History(); History.mainForm = this; history.Connection = connection; openExcel(); history.process(); closeExcel(); break; case "PrevAvgStrength": PrevAvgStrength strength = new PrevAvgStrength(); PrevAvgStrength.mainForm = this; strength.Connection = connection; openExcel(); strength.process(); closeExcel(); break; } } }