1

エンティティの文字列プロパティがあります。フォームを介して「01/01/2000」などの日付値を入力しています。入力されたデータを検証して有効かどうかを確認することは可能ですか?

以下の英国の日付形式を想定しています。

"32/01/2000" 無効、"31/01/2000" 有効、"test" 無効

私の POCO EF プロパティ コードは次のようになります。

[System.ComponentModel.DataAnnotations.DataType(System.ComponentModel.DataAnnotations.DataType.Date, ErrorMessage = @"Not a valid date")]


public virtual string DateOfBirth

これでうまくいくはず……か……

ありがとう。

4

2 に答える 2

1

RegularExpression注釈を使用することもできますが、控えめに言っても面倒です。そのプロパティをDateTime.

RegularExpressionShield your eyes)を使用してそれを行う方法は次のとおりです。

[RegularExpression("@(^((((0[1-9])|([1-2][0-9])|(3[0-1]))|([1-9]))\x2F(((0[1-9])|(1[0-2]))|([1-9]))\x2F(([0-9]{2})|(((19)|([2]([0]{1})))([0-9]{2}))))$)", ErrorMessage = @"Not a valid date")]
public virtual string DateOfBirth { get; set; }
于 2013-04-25T14:17:35.947 に答える
0

DateTime 解析メソッドのいずれかを使用しますか?

DateTime dob;
try
{
  DateTime dob = DateTime.Parse(myString, ...)
}
catch
{
  // handle error...
}
// string entered is valid
于 2013-04-25T14:45:11.730 に答える