私のasp.net mvc 3プロジェクトでは、検証が必要なプロパティで [Required] 属性を使用しています。また、ModelState.AddModelError を使用して、同じプロパティ (属性付き) にエラーを追加します。2 番目の方法で追加されたエラーは表示されません。その理由は何ですか?
コードは次のとおりです。
1) 属性を持つプロパティ
[Required(ErrorMessage = "Product name is required")]
public string Name { get; set; }
2) コントローラー アクション メソッド内
if (p.Name.Length < 3)
ModelState.AddModelError("Name",
"Product name should be at least 3 characters long");
3) ビューで
@Html.EditorFor(i => i.CurrentItem.Product.Name)
Html.ValidationMessageFor(i => i.CurrentItem.Product.Name)
@Html.ValidationMessage("Name")
では、属性と ModelState の両方を使用することはできませんか?