Pregunta

Tengo un proyecto ASP.NET MVC con XVal y anotaciones de datos y necesito cambiar a NHibernate validación. Con anotaciones de datos que tenía un DataAnnotationsValidationRunner y que estaba haciendo algo como esto:

  var errors = DataAnnotationsValidationRunner.GetErrors(this).ToList();
  if (errors.Any())
      throw new RulesException(errors);

¿Cómo se hace eso con nHibernate.Validator?

Actualización: vi algo como esto:

 var engine = new ValidatorEngine();
 var errors = engine.Validate(objstovalid)

pero no puedo hacer

if (errors.Any())
    throw new RulesException(errors);

porque los errores no es del tipo correcto (xVal.ServerSide.ErrorInfo).

¿Fue útil?

Solución

Por lo que yo sé XVal utiliza para provice un corredor de NHibernate validación, pero sólo funcionaba en una versión anterior. Que yo sepa no hay ningún corredor disponible para la versión actual NHV.

Justo aclarar, ¿todavía desea utilizar XVal? Si no, entonces ignorar lo anterior, y ejecutar la validación de NHV como esto:

var validator = new ValidatorEngine();
InvalidValue[] values = validator.Validate(theEntityYouWantToValidate);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top