solito creare Fowler's Range implementazione per queste cose.
public interface IRange<T>
{
T Start { get; }
T End { get; }
bool Includes(T value);
bool Includes(IRange<T> range);
}
public class DateRange : IRange<DateTime>
{
public DateRange(DateTime start, DateTime end)
{
Start = start;
End = end;
}
public DateTime Start { get; private set; }
public DateTime End { get; private set; }
public bool Includes(DateTime value)
{
return (Start <= value) && (value <= End);
}
public bool Includes(IRange<DateTime> range)
{
return (Start <= range.Start) && (range.End <= End);
}
}
L'uso è piuttosto semplice:
DateRange range = new DateRange(startDate, endDate);
range.Includes(date)
fonte
2011-01-24 12:02:36
Un modo più intelligente allora solo controllando se la data è compresa tra quelle date? –
Quindi cos'è più intelligente di una soluzione facile? – Polyfun