public bool IsInsideTimeframes(DateTimeOffset time)
{
if (Timeframes.Count == 0)
{
// No timeframes specified
return true;
}
foreach (var frame in Timeframes)
{
// If time is inside any Timeframes then we return true
bool start = false;
bool end = false;
if (frame.Start != null)
{
if (frame.Start < time)
{
start = true;
}
}
else
{
// No start set so we are in it
start = true;
}
if (frame.End != null)
{
if (frame.End > time)
{
end = true;
}
}
else
{
end = true;
}
if (start && end)
{
return true;
}
}
return false;
}