Как узнать минимальную и максимальную дату из таблицы данных в C #? - PullRequest
0 голосов
/ 21 марта 2019

У меня есть DataGridView, в котором строка содержит даты, и я хочу найти минимальное и максимальное значение из этой строки.

Как я могу получить его?

Ответы [ 2 ]

0 голосов
/ 21 марта 2019

по моей оценке, используя методы linq.Потому что короткий и основной код.

var dateTimes = dataGridView1.Rows.Cast<DataGridViewRow>()
            //.Select(x => (DateTime) x.Cells["ColumnName"].Value); //if column type datetime
            //or    
            .Select(x => Convert.ToDateTime(x.Cells["ColumnName"].Value));

var minValue = dateTimes.Min();
var maxValue = dateTimes.Max();
0 голосов
/ 21 марта 2019

Вы можете воспользоваться помощью сборников:

// select row with index that you want (I used 0 for example)
var row = dataGridView1.Rows[0];
List<DateTime> datesInRow = new List<DateTime>();
foreach (DataGridViewCell cell in row.Cells)
  datesInRow.Add((DateTime)cell.Value);
var maxDate = datesInRow.Max();

Конечно, более эффективный способ - найти max вручную, тогда вам не понадобится дополнительная коллекция, чтобы сделать это для вас:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...