2010-01-04 22 views
13

Estoy utilizando MVC2 con anotaciones de datos para la validación en mi página. Requiero un nombre y una fecha de nacimiento válida para estar presente. Proporciono ambos, e interrumpo el validador de fecha para asegurarme de que la fecha de nacimiento sea válida (y lo es), pero por alguna razón, Model.IsValid es falso en mi acción posterior. No veo nada en mi ValidationSummary.ASP.Net MVC2: ModelState no es válido, pero no sé por qué

¿Cómo puedo averiguar qué es inválido en el ModelState?

Respuesta

18

Necesitas recorrer la colección ModelState comprobando el número ModelState.Errors colección para cada propiedad es mayor que 0. Para obtener la colección de artículos ModelState por error, algo así como

ModelState["Property"].Where(ms => ms.Errors.Count > 0) 

Bondad,

Dan

+3

Agregue un punto de interrupción en la acción de su controlador y luego profundice en la colección Errores para rastrear el campo exacto (o campos) con el que tiene un problema. –

+0

Gracias. Estaba buscando una colección de errores fuertemente tipada. Encontré el error que estaba buscando. –

Cuestiones relacionadas