あなたがした場合はどうなりますか?
[DataType(DataType.Int32, ErrorMessage = "Custom Error Msg")]
public int? previousJobId { get; set; }
残念ながら、私はこのATMをテストすることができません。
2回目の試行:
これはきれいではありませんが、カスタムデータ注釈を作成する必要がなくなります。これにより、カスタムjQuery検証を作成する必要がなくなります。私はこれをテストすることができました、そしてそれは私のために働きました。しかし、あなたがそのスタイルが好きかどうかはあなた次第です。
[DisplayName("Previous Job No:")]
[RegularExpression("^[0-9]+$", ErrorMessage = "Custom Error Msg")]
public string previousJobId { get; set; }
private int? _previousJobId2;
public int? previousJobId2
{
get
{
if (previousJobId == null)
{
return null;
}
else
{
return Int32.Parse(previousJobId);
}
}
set
{
_previousJobId2 = value;
}
}
次のコマンドを使用して、コントローラーでテストできます。
[HttpPost]
public ActionResult Index(HomeViewModel home)
{
if (ModelState.IsValid)
{
int? temp = home.previousJobId2;
}
return View(home);
}
ビューで文字列を参照します
@Html.LabelFor(model =>model.previousJobId)