0

J'utilise AutoMappper 5.2 dans mon projet MVC. J'ai fait usage de IMapper créant des profils dont je comprends les profils sont un moyen d'organiser les mappages. J'injecte IMapper dans mes contrôleurs en utilisant Simple Injector pour enregistrer une instance.Utilisation d'un profil Automapper spécifique

Ce que je voudrais savoir est pouvez-vous les utiliser d'une manière où vous récupérez/configurer seulement le profil dont vous avez besoin pour un contrôleur spécifique? Si oui, comment vous y prendrez-vous? Si vous devez ajouter tous les profils dans un seul objet de configuration de mappage, cela a-t-il un impact sur les performances ou est-il marginal?

Je ne trouve pas de ressources ou de questions concernant l'utilisation d'un type de profil spécifique, elles traitent uniquement de leur création et de leur enregistrement.

+0

Qu'en est-il de définir votre propre abstraction 'de IMapper ' et injecter que dans les classes qui l'exigent? – Steven

Répondre

0

Je pense que ma réponse à une question similaire pourrait vous aider. C'est la dernière réponse ici: How to register AutoMapper 4.2.0 with Simple Injector. C'est en gros ce que Steven a dit ... vous devez créer un wrapper de profil générique qui implémente l'interface IMapper, avec l'argument générique étant un profil spécifique. Cela vous permet de créer un nombre illimité de profils, inscrivez-vous-lot tous, et d'injecter seulement celui que vous avez besoin dans votre contrôleur:

ProfileMapper<ApplicationProfile> appProfileMapper; 
ProfileMapper<MvcProfile> mvcProfileMapper; 
ProfileMapper<GuestProfile> guestProfile;