Asp.net-Mvc
ModelState.IsValid 總是返回 false [重複]
[HttpPost] public ActionResult Create(Users user) { if (ModelState.IsValid) { db.Users.Add(user); db.SaveChanges(); return RedirectToAction("Index"); } return View(user); }
ModelState.IsValid總是假的。所以它只是返回視圖並且沒有添加新記錄..
編輯
使用者:
public class User { public int UserID { get; set; } public string Name { get; set; } [Display(Name = "Confirm Password")] [DataType(DataType.Password)] public string ConfirmPassword { get; set; } public string Designation { get; set; } [Display(Name = "Date of Join")] [DataType(DataType.Date)] public DateTime DOJ { get; set; } public string Email { get; set; } [Display(Name = "Phone Number")] public System.Int64 PhoneNo { get; set; } }
ModelState.IsValid如果模型的驗證失敗,則為 false。
- 您有DataAnnotation使傳入模型失敗。
- 您添加了自定義驗證。
- 確保模型中沒有非空屬性的空條目
檢查
ModelState.Errors造成這種情況的原因是什麼。你可以使用這個:var errors = ModelState.Values.SelectMany(v => v.Errors);