Exemplo n.º 1
0
 /// <summary>
 /// Wczytanie wyników z lokalnego pliku z rezultatami.
 /// </summary>
 private void LoadDataFromLocalFile()
 {
     try
     {
         string       bestPlayer     = "";
         int          bestPoints     = -1;
         int          bestShot       = -1;
         StreamReader fileWithResult = new StreamReader("LocalResult.csv");
         String       line;
         DataTable    dataTable = new DataTable();
         dataTable.Columns.Add(new DataColumn("ID", typeof(int)));
         dataTable.Columns.Add(new DataColumn("Name", typeof(string)));
         dataTable.Columns.Add(new DataColumn("Points", typeof(int)));
         dataTable.Columns.Add(new DataColumn("Shot", typeof(int)));
         while ((line = fileWithResult.ReadLine()) != null)
         {
             UpdateDatagridviewFormTable updateDatagridview = new UpdateDatagridviewFormTable(UpdateDatagridviewDataFormTable);
             Char     delimiter  = ';';
             String[] substrings = line.Split(delimiter);
             DataRow  dataRow    = dataTable.NewRow();
             dataRow[0] = 0;
             dataRow[1] = substrings[0];
             dataRow[2] = Int32.Parse(substrings[1]);
             dataRow[3] = Int32.Parse(substrings[2]);
             dataTable.Rows.Add(dataRow);
             if (bestPoints < Int32.Parse(substrings[1]))
             {
                 if (bestShot > Int32.Parse(substrings[2]))
                 {
                     bestPlayer = substrings[0];
                     bestPoints = Int32.Parse(substrings[1]);
                     bestShot   = Int32.Parse(substrings[2]);
                 }
             }
             dataGridViewResults.BeginInvoke(updateDatagridview, dataTable);
         }
         fileWithResult.Close();
         ChangeTextLabel changeBestResult = new ChangeTextLabel(UpdateLabelPoints);
         ChangeTextLabel changeBestPlayer = new ChangeTextLabel(UpdateLabelBestPlayer);
         if (bestPoints != -1)
         {
             labelPoints.BeginInvoke(changeBestResult, bestPoints.ToString());
         }
         else
         {
             labelPoints.BeginInvoke(changeBestResult, "");
         }
         labelNameBestPlayer.BeginInvoke(changeBestPlayer, bestPlayer.ToString());
     }
     catch
     {
         MessageBox.Show("Brak pliku z lokalnymi rezultatami. [LocalResult.csv]");
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// Pobranie wyników z bazy danych i załadowanie do datagrid.
        /// </summary>
        private void LoadResultFromDatabase()
        {
            BlockForm             blockForm    = new BlockForm(LockForm);
            DisplayLabelStatement displayLabel = new DisplayLabelStatement(DisplayStatement);

            this.BeginInvoke(blockForm, false);
            this.BeginInvoke(displayLabel, true);
            try
            {
                MateuszThomas_Results testObject = context.MateuszThomas_Results.FirstOrDefault();
                if (testObject != null)
                {
                    int maxPoint = (from max in context.MateuszThomas_Results select max).Max(c => c.Points);
                    List <MateuszThomas_Results> bestPlayers = (from players in context.MateuszThomas_Results where players.Points == maxPoint select players).ToList();
                    int minNumberShot = bestPlayers.Min(c => c.Shots);
                    MateuszThomas_Results bestPlayer = bestPlayers.Where(c => c.Shots == minNumberShot).First();
                    if (bestPlayer != null)
                    {
                        ChangeTextLabel changeBestResult = new ChangeTextLabel(UpdateLabelPoints);
                        ChangeTextLabel changeBestPlayer = new ChangeTextLabel(UpdateLabelBestPlayer);
                        labelPoints.BeginInvoke(changeBestResult, bestPlayer.Points.ToString());
                        labelNameBestPlayer.BeginInvoke(changeBestPlayer, bestPlayer.Name);
                    }
                }
                var results = (from result in context.MateuszThomas_Results select result).ToList();
                UpdateDatagridviewFromList updateDatagridview = new UpdateDatagridviewFromList(UpdateDatagridviewFormOnlinedatabase);
                dataGridViewResults.BeginInvoke(updateDatagridview, results.OrderByDescending(r => r.Points).ToList());
                isConnectedWithDatabase = true;
            }
            catch
            {
                isConnectedWithDatabase = false;
                MessageBox.Show("Brak połączenia z baza dnaych. Sprawdź połaczenie z internetem. Dane zostaną wczytane z lokalnego pliku.");
                LoadDataFromLocalFile();
            }
            this.BeginInvoke(displayLabel, false);
            this.BeginInvoke(blockForm, true);
        }