次の月曜日と金曜日の日付を取得するために使用する次の方法があります。月曜日と金曜日の日付を来週から取得する
たとえば、今日は1/6/2017です。私はそれを実行した場合、私は次のような結果を得るために望んでいるだろう:
monday = 1/9/2017 friday = 1/13/2017
を、私は今週中にそれを実行する場合の方法は、正常に動作しますが、私は金曜日か土曜日のように、後でそれを実行した場合今から2週間後の月曜日と金曜日の日付を返します(来週ではありません)。
例えば、今日(金曜日6位)、それを実行している、私は次のような結果を得る:
monday = 1/16/2017 friday = 1/20/2017
をここにする方法である:
public static DateTime NextWeekRange(DateTime start, DayOfWeek day)
{
var add_days = ((int)day - (int)start.DayOfWeek + 7) % 7;
return start.AddDays(add_days);
}
そして、私のようなそれを呼び出しますこれは:
var monday = NextWeekRange(DateTime.Today.AddDays(i_today), DayOfWeek.Monday);
var friday = NextWeekRange(DateTime.Today.AddDays(i_today + 4), DayOfWeek.Friday);
私は何が間違っているのかよくわからないので、もう一組の目が助けになるでしょう!
ありがとうございます!
最後のコードブロックの 'i_today'の値は何ですか? –