2011-11-18 22 views
15

tengo una vista que utiliza una lista de modelitems así:¿Cómo agrego error ModelState a una lista

List<It4You.AlertBrick.Library.Domain.Order.AbOrderLineItemPicked> 

Cuando llego a esta lista serverside puedo comprobar si se trata de un tipo de artículo, que tiene tener un número de serie válido Si es otro tipo, verifico si el usuario ha puesto una marca de verificación en la casilla de verificación "elegido". Si ambos fallan, me gustaría agregar un error de modelo a esta fila. Cual es la mejor manera de hacer esto?

Respuesta

28

Puede simplemente añadir directamente en ModelState como pares clave/valor:

ModelState.AddModelError("error", "Serial is invalid"); 

y luego en su opinión: @Html.ValidationMessage("error").

+0

¿Cómo agregarías específicamente el error para mostrar al lado del error la propiedad? Digamos, por ejemplo, que tengo una plantilla de editor para el tipo de elemento de lista y en eso he especificado ValidationMessageFor esa propiedad ... –

+1

Simplemente configure la clave para que sea el nombre de la propiedad, p. 'ModelState.AddModelError (" User.Password "," Contraseña no válida ");' – eth0

+2

¡Gracias! Cómo proceder si la primera propiedad es una colección y necesito mostrar el error junto a una propiedad específica de un elemento arbitrario. ¿Funcionará [] aquí? –

Cuestiones relacionadas