asp.net mvc - mvc - ModelState.IsValid siempre devuelve falso
edit mvc asp net (1)
ModelState.IsValid
será falso si la validación para el Modelo falló.
- Tienes DataAnnotation que falló el modelo entrante.
- Agregaste validaciones personalizadas.
- Asegúrese de que no haya entradas nulas en el modelo para propiedades que no sean nulas
Verifique el ModelState.Errors
para ver cuál es la razón que lo causa. Puedes usar esto:
var errors = ModelState.Values.SelectMany(v => v.Errors);
Esta pregunta ya tiene una respuesta aquí:
- ModelState.IsValid == false, ¿por qué? 8 respuestas
[HttpPost]
public ActionResult Create(Users user)
{
if (ModelState.IsValid)
{
db.Users.Add(user);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(user);
}
ModelState.IsValid
siempre es falso.
por lo que solo regresa la vista y el nuevo registro no se agrega.
Editar
Usuario:
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; }
}