public static tblCompResult CreateCompResultRecord(tblLid lid) { tblCompResult CompResult = new tblCompResult(); try { CompResult.LidNr = lid.LidNr; CompResult.Lid = lid; } catch (Exception ex) { GuiRoutines.ShowMessage(ex); } return(CompResult); }
private void cmdTTKaart_Click(object sender, EventArgs e) { this.Cursor = Cursors.WaitCursor; foreach (DataGridViewRow r in dgView.Rows) { string bn = r.Cells["Bondsnummer"].Value.ToString(); if (bn == string.Empty) { continue; } tblCompResult cr = ScrapeTTKaart(bn, int.Parse(cboJaar.Text), cboSeizoen.Text.ToUpper().Substring(0, 1)); if (cr != null) { r.Cells["Klasse"].Value = cr.KlasseCombo; r.Cells["Percentage"].Value = cr.Percentage; } } this.Cursor = Cursors.Arrow;; }
private void cmdSave_Click(object sender, EventArgs e) { foreach (DataGridViewRow r in dgView.Rows) { if (r.Cells["Klasse"].Value == null) { continue; } string k = r.Cells["Klasse"].Value.ToString().Trim(); if (k == string.Empty) { continue; } if (r.Cells["Percentage"].Value == null) { continue; } string p = r.Cells["Percentage"].Value.ToString(); if (!p.IsNumeric()) { continue; } tblCompResult cr = new tblCompResult(leden.GetLidByLidNr(int.Parse(r.Cells["LidNr"].Value.ToString()))); cr.LidNr = cr.Lid.LidNr; cr.Jaar = int.Parse(cboJaar.Text); cr.SeizoenCombo = cboSeizoen.Text; cr.KlasseCombo = r.Cells["Klasse"].Value.ToString(); cr.Percentage = int.Parse(r.Cells["Percentage"].Value.ToString()); resultaten.InsertOrUpdate(cr); } dataAdaptor.UpdateCompResulten(resultaten); dataAdaptor.CommitTransaction(true); toolStripStatusLabel1.Text = "Bewaard"; }
private tblCompResult ScrapeTTKaart(string bondsnummer, int jaar, string seizoen) { try { // Scrape the website WebClient client = new WebClient(); //this is the important bit... client.Headers.Add("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4"); client.Headers.Add("Accept-Language", "en-us,en;q=0.5"); //end of the important bit... client.UseDefaultCredentials = true; IWebProxy theProxy = client.Proxy; if (theProxy != null) { theProxy.Credentials = CredentialCache.DefaultCredentials; } client.Proxy = WebRequest.DefaultWebProxy; byte[] data = null; try { string url = @"http://ttkaart.nl/spelers/" + bondsnummer + @"/"; data = client.DownloadData(url); } catch { //GuiRoutines.ShowMessage("Bondsnummer niet gevonden: " + bondsnummer); return(null); } // Zet de byte-array om in een string StringReader sr = new StringReader(Encoding.UTF8.GetString(data, 0, data.Length)); tblCompResult cr = null; int j = 0; string seiz = string.Empty; string klasse = string.Empty; string type = string.Empty; int perc = 0; HtmlTag tag; HtmlParser parse = new HtmlParser(sr.ReadToEnd()); parse.ParseNext("tbody", out tag); if (parse.ParseNext("tbody", out tag)) { parse.ParseNext("td", out tag); if (parse.ParseNext("td", out tag)) { string s = parse.ParseTagValue(); j = int.Parse(s.Substring(0, 4)); seiz = s.Substring(6, 1).ToUpper(); } parse.ParseNext("td", out tag); //Jeugd type = parse.ParseTagValue(); parse.ParseNext("td", out tag); // Midden if (parse.ParseNext("td", out tag)) { if (parse.ParseNext("a", out tag)) { klasse = parse.ParseTagValue().Substring(0, 11); switch (klasse) { case "Kampioensgr": klasse = "K"; break; case "Landelijk A": klasse = "A"; break; case "Landelijk B": klasse = "B"; break; case "Landelijk C": klasse = "C"; break; case "Starterskla": klasse = "S"; break; case "1e Divisie ": klasse = "1D"; break; case "2e Divisie ": klasse = "2D"; break; case "3e Divisie ": klasse = "3D"; break; case "Duo 1e Klas": klasse = "D1"; break; case "Duo 2e Klas": klasse = "D2"; break; case "Duo 3e Klas": klasse = "D3"; break; case "Duo 4e Klas": klasse = "D4"; break; case "Duo 5e Klas": klasse = "D5"; break; case "Duo 6e Klas": klasse = "D6"; break; default: if (klasse.Substring(0, 1).IsNumeric()) { klasse = klasse.Substring(0, 1); } break; } ; } } parse.ParseNext("td", out tag); // Aantal wedstrijden parse.ParseNext("td", out tag); // gewonnen if (parse.ParseNext("td", out tag)) { perc = int.Parse(parse.ParseTagValue()); } if (j == jaar && seiz == seizoen) { cr = new tblCompResult(); cr.Klasse = klasse; cr.Percentage = perc; cr.CompetitieType = type; } } return(cr); } catch (Exception ex) { GuiRoutines.ShowMessage(ex); return(null); } }