none
Somar coluna com tal codigo. RRS feed

  • Pergunta

  • Olá pessoal, para aprendizado estou criando um programa que controla os corredores de kart, em C# e tenho um DataGridView com os sequintes dados:

    Data Corrida, Posição, Nome,                                                                               Código Piloto, Pontos

      24/09/2017 1 BRUNO TAZZA                                                                                          1 35
      25/06/2017 1 BRUNO TAZZA                                                                                          1 35
      26/11/2017 9 BRUNO TAZZA                                                                                          1 21
      27/08/2017 1 BRUNO TAZZA                                                                                          1 35
      29/10/2017 2 BRUNO TAZZA                                                                                          1 33
      30/07/2017 2 BRUNO TAZZA                                                                                          1 33
      25/06/2017 2 DANIEL DE CARVALHO                                                                                   2 33
      24/09/2017 5 ADRIANO DA SILVA                                                                                     3 27
      25/06/2017 3 ADRIANO DA SILVA                                                                                     3 31
      26/11/2017 11 ADRIANO DA SILVA                                                                                     3 19
      27/08/2017 5 ADRIANO DA SILVA                                                                                     3 27
      29/10/2017 6 ADRIANO DA SILVA                                                                                     3 25
      30/07/2017 8 ADRIANO DA SILVA                                                                                     3 22

    Gostaria de somar os pontos de cada corredor para fazer o resultado final.

    Piloto

    BRUNO TAZZA - 192

    ADRIANO DA SILVA - 151

    e assim por adiante... Mas como disse estou em fase de aprendizado não sei fazer.


    • Editado rmrote terça-feira, 28 de novembro de 2017 14:30
    terça-feira, 28 de novembro de 2017 14:29

Respostas

  • var list = new List<Kart>();
    
    for (int contador = 0; contador < yourDataGridView.Rows.Count; ++contador)
    {
        list.add(new Kart {
          Nome = dgvMovimentacao.Rows[contador].Cells[3].Value.ToString(),
          Pontos = Convert.ToDecimal(dgvMovimentacao.Rows[contador].Cells[3].Value)
        });
    }
    
    list.GroupBy(d => d.Nome)
        .Select(
            g => new
            {
                Nome = g.Key,
                Pontos = g.Sum(s => s.Value)
            });
    
    public class Kart {
    
      public int Nome { get; set; }
    
      public Decimal Pontos { get; set; }   
    }
    Isso pode te ajudar!

    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    terça-feira, 28 de novembro de 2017 16:59
  • dgvMovimentacao.Rows[contador].Cells[1].Value.ToString() // aq e o nome, na posição 1

    Um pequeno erro!


    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    terça-feira, 28 de novembro de 2017 16:59

Todas as Respostas

  • var list = new List<Kart>();
    
    for (int contador = 0; contador < yourDataGridView.Rows.Count; ++contador)
    {
        list.add(new Kart {
          Nome = dgvMovimentacao.Rows[contador].Cells[3].Value.ToString(),
          Pontos = Convert.ToDecimal(dgvMovimentacao.Rows[contador].Cells[3].Value)
        });
    }
    
    list.GroupBy(d => d.Nome)
        .Select(
            g => new
            {
                Nome = g.Key,
                Pontos = g.Sum(s => s.Value)
            });
    
    public class Kart {
    
      public int Nome { get; set; }
    
      public Decimal Pontos { get; set; }   
    }
    Isso pode te ajudar!

    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    terça-feira, 28 de novembro de 2017 16:59
  • dgvMovimentacao.Rows[contador].Cells[1].Value.ToString() // aq e o nome, na posição 1

    Um pequeno erro!


    __________________________________________________________________________________________________________ Atenciosamente, Mike Rodrigues De Lima.

    terça-feira, 28 de novembro de 2017 16:59
  • Vou testar...
    quarta-feira, 29 de novembro de 2017 01:54