I have settings object with property
class Settings
{
DateTime StartTime;
DateTime EndTime;
}
and I have created a list of开发者_运维技巧 this setting object.
How can I get the MaxTime and MinTime from the collection of objects using LINQ?
var minStartTime = settings.Min(setting => setting.StartTime); // returns 8am
var maxEndTime = settings.Max(setting => setting.EndTime); // returns 5pm
This returns the lowest and highest times. Other answers are telling you how to get the difference between max and min, which does not appear to be what you asked for.
Assuming you want a minimum and maximum of the time deltas:
Settings[] settings = ...;
var max = settings.Max(s => s.EndTime - s.StartTime);
var min = settings.Min(s => s.EndTime - s.StartTime);
Do it like this
var max = (from item in myList
select item.StartTime - item.EndTime).Max()
var min = (from item in myList
select item.StartTime - item.EndTime).Min()
精彩评论