Pergunta

Estou tentando decidir qual abordagem de validação adotar para um novo projeto ASP.NET MVC. (E uau, existem muitas opções!)

O projeto usa o Nhibernate, então a primeira coisa que considerei foi o Validador Nibernato (devido à rígida integração com o Nibernate). No entanto, até onde posso ver, há apenas alguns benefícios para essa integração rígida:

1) Os esquemas de dB gerados pelo Nibernate incluirão detalhes da validação (por exemplo, os comprimentos da coluna serão definidos como valor máximo permitido na validação). (Isso não é realmente interessante para mim, como eu gero esquemas manualmente.)

2) O Nibernate lançará uma exceção se você tentar salvar dados que não atendem às especificações de validação. (Isso me parece bastante redundante, já que os dados presumivelmente já serão validados por qualquer mecanismo que você escolher antes de salvar de qualquer maneira)

Se houver mais benefícios para o validador Nibernate, entre em contato!

Outras bibliotecas das quais tenho lido um pouco incluem:

  • MS DataNotações
  • Validador de Castle
  • Algo mais?

Também tenho pensado em usar o XVAL para fornecer validação do lado do cliente do mesmo conjunto de regras. No entanto, ouço que o ASP.NET MVC V2 incluirá algo semelhante ao XVAL (integração com jQuery) pronta para uso? Essa nova funcionalidade incluída tornará alguns dos outros redundantes?

Então, estou basicamente pedindo conselhos das pessoas sobre qual direção tomar aqui. Não quero implementar um esquema específico, apenas para arrancá -lo quando outro se tornar a tecnologia dominante.

O que funcionou para você? Qual opção você acha que tem/terá a vantagem?

Obrigado!

Foi útil?

Solução

Eu tenho usado FluentValidation juntamente com Validação do jQuery plug -in e ainda não consegue encontrar uma situação que eles não conseguem lidar.

Outras dicas

Eu gosto xval.

Você pode implementar a validação de cliente e servidor com muita facilidade com ele. Também há suporte para a validação da coluna (propriedade) em entidades que você gostaria de usar.

DataNotações implementado por Aulas de amigo e Validação do cliente jQuery

Certifique -se de estar usando MVC Visualizar 2

Você pode estar interessado nisso Abordagem delegada. Eu estava porque não gostei da ideia XVAL (a solução que estou indo atualmente) e o fato de não parecer não atender a casos de validação complexos que cruzavam várias propriedades da mesma ou mesmo diferentes estruturas de classe.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top