2010-05-07 17 views
5

Estoy desarrollando una aplicación ASP.NET MVC y he estado buscando el uso de anotaciones de datos en mi POCO, que están definidas en mi capa de servicio. Siempre que tenga una referencia a System.ComponentModel & System.ComponentModel.DataAnnotations esto no es problema y lo que me gusta de esto es que me permite reutilizar mi capa de servicio en una aplicación de Win Forms.Uso de anotaciones de datos en POCO con MVC para validación remota

Ahora estoy buscando para hacer algo de validación remota utilizando anotaciones de datos y han echado un vistazo a este artículo: http://msdn.microsoft.com/en-us/library/ff398048(VS.100).aspx

Sin embargo, para utilizar las anotaciones de datos en este contexto que necesito para hacer referencia System.Web.Mvc , System.Web y System.Web.Routing. Esto introduce una dependencia en las DLL Web, que me limita un tanto.

¿Alguien puede recomendar una buena forma de implementar la validación remota de datos usando anotaciones de datos que no están acopladas con ASP.NET MVC o tal vez sugerir una mejor alternativa?

¡Gracias por la ayuda!

+0

¿Por qué la dependencia de la DLL de la web te limita? –

+0

Hola Rob, todo se reduce a que si estoy compilando aplicaciones de formularios win entonces no necesito ninguna referencia a las DLL Web. Tengo entendido que DataAnnotations solo requiere referencias a los espacios de nombres System.ComponentModel & ComponentModel.DataAnnotations. En el tutorial mencionado, está específicamente relacionado con la validación de Cliente y Servidor, solo intento hacer la parte de validación del Servidor, si tiene sentido. –

+0

Sí ... el artículo apesta a lo grande. Trataré de encontrar una solución más limpia ya que también tengo mis Entidades en un ensamblaje separado. Volveré si tengo éxito. –

Respuesta

2

Resolví esto al final alejándome de poner DataAnnotations en mi POCO y en su lugar los puse en mi ViewModels y uso AutoMapper para mapear entre mi ViewModel y POCO (lo que me ahorra algo de tiempo haciendo un mapeo tedioso). Hay un gran video en Automapper aquí http://perseus.franklins.net/dnrtvplayer/player.aspx?ShowNum=0155

+0

El enlace ya no funciona – JustJohn

Cuestiones relacionadas