Public enum DateInterval
{
Second, Minute, Hour, Day, Week, Month, Quarter, Year
}
Public sealed class DateTimeManger
{
Private DateTimeManger ()
{}// End of default constructor
Public static long DateDiff (DateInterval Interval, System. DateTime StartDate, System. DateTime EndDate)
{
Long lngDateDiffValue = 0;
System. TimeSpan TS = new System. TimeSpan (EndDate. Ticks-StartDate. Ticks );
Switch (Interval)
{
Case DateInterval. Second:
LngDateDiffValue = (long) TS. TotalSeconds;
Break;
Case DateInterval. Minute:
LngDateDiffValue = (long) TS. TotalMinutes;
Break;
Case DateInterval. Hour:
LngDateDiffValue = (long) TS. TotalHours;
Break;
Case DateInterval. Day:
LngDateDiffValue = (long) TS. Days;
Break;
Case DateInterval. Week:
LngDateDiffValue = (long) (TS. Days/7 );
Break;
Case DateInterval. Month:
LngDateDiffValue = (long) (TS. Days/30 );
Break;
Case DateInterval. Quarter:
LngDateDiffValue = (long) (TS. Days/30)/3 );
Break;
Case DateInterval. Year:
LngDateDiffValue = (long) (TS. Days/365 );
Break;
}
Return (lngDateDiffValue );
} // End of DateDiff
} // End of class
Samples: Public class DateDiffCS
{
Public static void Main (string [] CmdLineArgs)
{
System. DateTime date1 = System. DateTime. Now;
System. DateTime date2 = System. DateTime. Now. AddYears (2 );
System. Console. Out. WriteLine ("Days:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Day, date1, date2). ToString ());
System. Console. Out. WriteLine ("Hours:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Hour, date1, date2). ToString ());
System. Console. Out. WriteLine ("Minutes:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Minute, date1, date2). ToString ());
System. Console. Out. WriteLine ("Month:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Month, date1, date2). ToString ());
System. Console. Out. WriteLine ("Quarter:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Quarter, date1, date2). ToString ());
System. Console. Out. WriteLine ("Seconds:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Second, date1, date2). ToString ());
System. Console. Out. WriteLine ("Week:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Week, date1, date2). ToString ());
System. Console. Out. WriteLine ("Year:" + DateTimeManger. DateDiff
(DateTimeManger. DateInterval. Year, date1, date2). ToString ());
System. Console. In. ReadLine ();
}
} // End of the class
From:
HP.Mahesh.UtilityManager.Libraries.DateTimeUtility