たとえば、ユーザーは、今日が月曜日または火曜日で、スケジュールが現在のシステム時間と比較して (与えられた) 時間枠内にある場合、自分のパスワードを表示できますが、今日が月曜日または火曜日であっても、与えられた時間がたとえば、午後 1 時 30 分から 5 時 30 分までとしましょう。まだその時刻になっていないか、すでに過ぎている場合、彼は自分のパスワードを表示できません。
あなたがドリルを手に入れることを願っています。以下のコードは正常に動作しますが、火曜日と火曜日のように同じ日を 2 回入力すると、競合が発生します。この条件ステートメントを修正するにはどうすればよいですか? ありがとう。
これが私のコードです:
DateTime systemtime = DateTime.Now;
DateTime timestart = Convert.ToDateTime(txtTimestart.Text);
DateTime timeend = Convert.ToDateTime(txtTimeend.Text);
var systemday = DateTime.Now.DayOfWeek.ToString();
var day1 = Convert.ToString(txtDay1.Text);
var day2 = Convert.ToString(txtDay2.Text);
if (systemday != day1 || systemday != day2)
{
if (systemtime < timestart || systemtime > timeend)
{
MessageBox.Show("You are not authenticated to view your password.", "Get Password Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
else
{
MessageBox.Show("Your password is ...", "Get Password Success", MessageBoxButtons.OK, MessageBoxIcon.None);
return;
}
}
else
{
if (systemtime < timestart || systemtime > timeend)
{
MessageBox.Show("You are not authenticated to view your password.", "Get Password Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
else
{
MessageBox.Show("Your password is ...", "Get Password Success", MessageBoxButtons.OK, MessageBoxIcon.None);
return;
}
}