Υπολογισμός της διαφοράς μεταξύ δύο ημερομηνιών (αριθμός ημερών);

Βλέπω ότι αυτή η ερώτηση έχει απαντηθεί για τις Java, JavaScript και PHP, αλλά όχι για τη C#. Έτσι, πώς μπορεί κανείς να υπολογίσει τον αριθμό των ημερών μεταξύ δύο ημερομηνιών στη C#;

Λύση

Υποθέτοντας ότι οι ημερομηνίες StartDate και EndDate είναι τύπου DateTime:

(EndDate - StartDate).TotalDays
Σχόλια (11)

Χρησιμοποιήστε το αντικείμενο TimeSpan που είναι το αποτέλεσμα της αφαίρεσης ημερομηνίας:

DateTime d1;
DateTime d2;
return (d1 - d2).TotalDays;
Σχόλια (2)

Νομίζω ότι αυτό θα κάνει αυτό που θέλετε:

DateTime d1 = DateTime.Now;
DateTime d2 = DateTime.Now.AddDays(-1);

TimeSpan t = d1 - d2;
double NrOfDays = t.TotalDays;
Σχόλια (0)