2010-06-22 20 views
0

J'ai un scénario commun: l'application SL et le service WCF en tant que source de données.Mise à jour de l'entité via DTO

J'utilise des DTO pour transférer des objets métier sur le réseau. J'ai un problème - Mettre à jour l'entité. Dans le formulaire client, j'ai un DTO lié et je l'envoie à WCF. Je veux savoir un moyen agréable de mettre à jour une entité de base de données réelle par des données DTO. En WCF, j'utilise NHibernate pour le DAL. Ma solution consiste à obtenir l'entité attachée par ID à partir de la base de données et je copie toutes les propriétés (avec des objets imbriqués) du DTO.

Mais je pense que ce n'est pas flexible ou bon. Pouvez-vous me conseiller un meilleur moyen?

+0

Votre approche actuelle me semble correcte. –

Répondre

0

Comme tout DTO a des avantages & par contre, mais lorsque vos DTO sont exactement les mêmes que vos entités, il peut sembler fastidieux de faire la cartographie des propriétés manuellement. Essayez de regarder AutoMapper qui devrait vous aider à accélérer la cartographie des propriétés.

+0

Merci. J'utilise AutoMapper pour mapper mes objets db aux DTO. Mais je me demande si je peux utiliser la variante inverse, car j'ai besoin d'un proxy d'objets imbriqués instaed d'int id et d'autres ... Mes dtos ne sont pas les mêmes que les entités –