2017-10-13 6 views
2

j'ai une classe d'entité qui est rempli à partir du back-end et automapper est utilisé pour cartographier les données vers un nouveau modèle DTO. J'ai d'autres données venant d'une autre source qui a des données identiques et de nouvelles données que je veux placer dans le DTO. Quand je dis les mêmes données, je veux dire, certaines propriétés de la nouvelle source doivent remplacer les propriétés du DTO qui ont déjà des données en eux.C# Combiner des données de deux classes dans l'une de ces classes

Est-il possible d'utiliser automapper ou une belle façon facile de fusionner ces données? ou est le seul moyen de le faire par mappage manuel?

Merci

+1

Je pense que pas une bonne approche. Vous devez créer un nouveau DTO chaque fois que vous avez besoin de modifier les données. IMHO Composer DTO pendant la durée de vie est mauvais. – daremachine

+0

je dois combiner les valeurs, car un processeur qui est finalement appelé prend un modèle unique qui a besoin de données provenant de sources multiples dans un ordre réécrites particulier. – user1161137

+0

double possible de [Automapper: Mise à jour des valeurs de propriété sans créer un nouvel objet] (https://stackoverflow.com/questions/2374689/automapper-update-property-values-without-creating-a-new-object) – Progman

Répondre

1

Vous pouvez essayer quelque chose comme ceci:

var model = Mapper.Map<Model>(dto1); 
Mapper.Map(dto2, model);