C# LINQ или для l oop Как получить источник данных из БД? - PullRequest
0 голосов
/ 16 марта 2020

Я пытаюсь получить количество каждого элемента в столбце, которые имеют одинаковое значение. например, у меня есть таблица с информацией о людях, и я хочу, чтобы она указала go через столбец имени и подсчитала, сколько там Джо и Мэри без указания определенного имени.

Ответы [ 2 ]

1 голос
/ 16 марта 2020

Попробуйте использовать GroupBy:

public class People
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }

    static void Main(string[] args)
    {
        var peoples = new List<People>
        {
            new People { Id = 1, FirstName = "Bob", LastName = "Abc" },
            new People { Id = 2, FirstName = "Joe's", LastName = "Def" },
            new People { Id = 3, FirstName = "Mary's", LastName = "Ghi" },
            new People { Id = 4, FirstName = "Alice", LastName = "Jikl" },
            new People { Id = 5, FirstName = "Bob", LastName = "Mno" },
        };

        var groupedByFirstName = peoples
            .GroupBy(x => x.FirstName)
            .Select(x => new
            {
                FirstName = x.Key,
                Count = x.Count()
            });

        foreach (var people in groupedByFirstName)
        {
            Console.WriteLine($"FirstName: {people.FirstName}. Count: {people.Count}");
        }

        Console.ReadKey();
    }
}
1 голос
/ 16 марта 2020

Вы можете сгруппировать данные по столбцу

users.GroupBy(x => x.FirstName).Select(x => new
{
    FirstName = x.Key,
    Count = x.Count()
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...