MVC 3 y DRY validación personalizada

A menos que me falte algo (lo cual es muy posible), me parece que la validación personalizada siempre ha violado DRY. En todos los ejemplos que he visto, incluso con la nueva Validación de clientes discreta presentada con MVC 3, tenemos que crear código .NET para nuestra validación del lado del servidor, y jQuery (o código JavaScript) para la validación del lado del cliente. @

Entiendo que no existe un traductor de .NET a jQuery que facilite la validación del servidor / cliente DRY, y supongo que esa sería la única forma de tener una validación DRY verdadera que funcione tanto en el lado del servidor como del cliente.

Pero estaría perfectamente contento con tener una validación personalizada siempre realizada en el servidor. Los datos necesarios para pasar a la validación personalizada (en mi caso) generalmente se limitan a uno o dos campos, y la lógica del lado del servidor suele ser bastante rápida, incluso si tiene que llegar a la base de datos.

¿No hay un mecanismo OOTB para conectar la validación personalizada utilizando atributos, y luego hacer que su validación del lado del cliente use Ajax para ejecutar la validación del lado del servidor y responder al cliente? O, ¿alguien ha ideado tal solución?

¿O es una cuestión de, al final, las compensaciones de repetir la validación personalizada es mejor que los problemas introducidos con la ejecución siempre del lado del servidor de validación personalizada?

Gracias por adelantado