テキストボックスがあります-DateOfBirth データの検証からデータベースへの保存まで、次の手順に従います。
ステップ 1: テキストを送信するときに、日付が正しい形式 (dd/mm/yyyy) であるかどうかを検証します。
string Pattern = @"^(0?[1-9]|[12][0-9]|3[01])[/](0?[1-9]|1[012])[/](19|20)\d\d";
ステップ 2: 形式が正しければ、テキスト ボックスの入力値を日時形式に変換します。
IFormatProvider theCultureInfo = new System.Globalization.CultureInfo("en-GB", true);
DOB = DateTime.ParseExact(txtDOB.Value, "dd/mm/yyyy", theCultureInfo);
ステップ 3: 次に、値をデータベースに送信し、テーブルにそのまま保存します。
ここで問題が発生しました:
日付「04/04/2012」の場合、すべて正常に動作します。
しかし、日付「2012 年 4 月 4 日」または「2012 年 4 月 4 日」を送信すると、ステップ 2 で例外がスローされます。
String was not recognized as a valid DateTime.
この問題を処理するにはどうすればよいですか?
ステップ 2 をエスケープし、代わりにデータベース クエリで変換を行う必要がありますか ???