こんにちは、ホテルの予約フォームを作成していて、泊数で総滞在費を計算したいと考えていました。到着日と出発日が必要ですが、検証を追加したいので、ユーザーが間違った形式を入力すると、再試行を求めるメッセージ ボックスが表示されます。これが私のコードで、すでにタイムスパンの変換に少し助けられているので、もう一度助けていただければ幸いです。エラーは「dateDiff = aDate」で始まる行にあり、変数 aDate と dDate が割り当てられていないことを示しています。
String arrival, departure;
arrival = textBox1.Text;
departure = textBox2.Text;
DateTime aDate, dDate;
try
{
aDate = DateTime.ParseExact(arrival, "dd/mm/yyyy", null);
dDate = DateTime.ParseExact(departure, "dd/mm/yyyy", null);
return;
}
catch
{
MessageBox.Show("Invalid input format please enter in format DD/MM/YYYY");
}
TimeSpan dateDiff;
dateDiff = dDate.Subtract(aDate);
int nights = (int)dateDiff.TotalDays;
textBox3.Text = ("" + nights);
textBox5.Text = ("£" + (nights * 115));