C#でDateTimeで指定した範囲をループさせたいが失敗する
Q&A
Closed
C#でDateTimeで指定した範囲をループさせたいが失敗
期間Aから期間BをループさせたいがAddDays()による加算がうまくいかずに無限ループする
例)
C#で任意の日数分ループ処理するコードを書いています。
ループ処理(for, while)中に日付の加算ができずに無限ループしてしまいます
解決方法を教えて下さい。
発生している問題・エラー
AddDaysによる日付の加算ができない
例)
該当するソースコード
ソースコードを入力
例)
public DateTime DisplayDate
public コンストラクタ(){
DisplayDate = new DateTime(2023, 10, 1);
}
private List<string> CreateDefaultAchiveDate()
{
DateTime startDate = DisplayDate;
DateTime endDate = DisplayDate.AddMonths(6).AddDays(-1);
var DefaultAchiveData = new List<string>();
for(DateTime date = startDate; date <= endDate; date.AddDays(1))
{
DefaultAchiveData.Add(date.ToString("yyyyMMdd") + ":");
}
return DefaultAchiveData;
}
自分で試したこと
日付加算処理をAdd(TimeSpan)にする
while文で実行する
0 likes