給定一個POCO事件{OffsetDateTime開始,OffsetDateTime結束}和POCO試用{OffsetDateTime開始,OffsetDateTime結束}如何檢查2 OffsetDateTime是否在另一個2 OffsetDateTIme內?
在哪裏審判典型跨度小時,事件發生在幾秒鐘。
如何測試某個事件是否在試用期內發生?
它以前天真的代碼,用於:event.Start> trial.Start & & event.Start < trial.End
,但轉換爲NodaTime這些比較都不再有效。
我懷疑我不能不假設它應該如何轉換爲瞬間和間隔,考慮到事件和試驗來自第三方庫,應該可能使用時間分類類型,或瞬間而不是OffsetDateTimes 。
乾杯喬恩,我覺得前面的代碼會碰到右邊的同樣的問題? –
@RyanTheLeach:呃,你沒有展示你在最後部分使用什麼,所以很難知道 - 但可能,是的。你一定要考慮(和測試)這樣的邊緣案例。 –
@JonSkeet - 這僅測試事件的整個長度是否在試驗中。也許這就是OP想要的,但似乎他們實際上想要測試重疊範圍,根據我的答案。 'Interval'上的'IntersectsWith'或'OverlapsWith'方法可能是一個很好的例子嗎? –