日付の差分をもとめる
日数を求めるだけなら単純に引けばよい
DateTime dateFrom = new DateTime(2008, 1, 10); DateTime dateTo = new DateTime(2008, 1, 25); TimeSpan span = dateTo - dateFrom; int days = span.TotalDays;
2008/2/13〜2008/4/12までの月数を求める場合は以下のようにする(開始日の日の部分の前日に満1ヶ月)
DateTime dateFrom = new DateTime(2008, 2, 13); DateTime dateTo = new DateTime(2008, 4, 12); DateTime dateToNextDay = dateTo.AddDays(1); Long diffMonth = DateAndTime.DateDiff( DateInterval.Month, dateFrom, dateToNextDay); if (dateFrom.Day > dateToNextDay.Day) { diffMonth--; }
DateAndTime.DateDiffメソッドはMicrosoft.VisualBasicなメソッドなので注意が必要。
※コンパイル通してないんで間違ってるかも