estoy luchando para engranar dos mejores prácticas juntos:ASP.NET MVC 2 dtos de validación utilizando en lugar de entidades del dominio
- Uso DataAnnotations + ModelBinding para la validación en ASP.NET MVC 2
- Uso de dtos vez de las entidades de dominio al pasar datos a través del modelo de vista
Si quiero pasar por encima de dtos en lugar de entidades de dominio, a continuación, aprovechando DataAnnotations + ModelBinding para la validación se me requiere para especificar atributos de validación en mis clases DTO. Esto da como resultado una gran cantidad de trabajo duplicado ya que varios DTO pueden contener campos superpuestos con las mismas restricciones de validación. Esto significa que cada vez que cambie una regla de validación en mi dominio, debo buscar todos los DTO que correspondan con ese valor y actualizar sus atributos de validación.
Eso parece un poco restrictivo. ¿Qué sucede si una vista necesita todas las propiedades de una entidad mientras que otra vista solo necesita algunas? ¿No utilizaría ese caso la invocación de múltiples DTO? –
Estoy de acuerdo con Kevin, podría pensar en instancias en las que quisiera varios DTO para fines de visualización. Sin embargo, solo tener un DTO para enviar datos sería un enfoque sensato. – roryf
DTO son bolsas para sus datos, el ViewModel es el lugar para mezclar y combinar. No creo que sea una buena idea tener múltiples DTO con datos variables, eso se mete en el lío que, con razón, no quieres tener que mantener. –