juan
juan

Reputation: 81902

How can I calculate how many nights are there in a date range?

I need to calculate the quantity of nights (stay at a hotel) from the checkin and checkout dates.

What is the best way to do it?

ie: If I have

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

Doing (Checkout - Checkin).Days would give me 1 night instead of 2

I'm thinking of adding a simple if to check the hours (if checkin-time is greater than checkout-time) and add the missing night, but maybe there's a better "algorithm"

Upvotes: 7

Views: 6236

Answers (1)

Elisha
Elisha

Reputation: 23780

DateTime has a property that returns the Date part which is the DateTime in midnight. You can use this part to get the nights since all parts of day will be mapped to the same time at day:

(Checkout.Date - Checkin.Date).Days

Upvotes: 25

Related Questions