如何计算日期范围内有多少个夜晚?

我需要从入住和结账日期算出夜晚的数量(入住酒店)。

最好的方法是什么?

即:如果我有

Checkin: 12/11/2009 15:00 hs Checkout: 14/11/2009 12:00 hs 

(Checkout - Checkin).Days会给我1晚而不是2晚

我正在考虑添加一个简单的if来检查小时数(如果签入时间大于结账时间)并添加丢失的夜晚,但也许有更好的“算法”

DateTime有一个属性,它返回Date部分,它是午夜的DateTime。 您可以使用此部分来获取夜晚,因为一天中的所有部分都将映射到当天的同一时间:

 (Checkout.Date - Checkin.Date).Days