58 votes

Des Alternatives à AutoMapper

Quelles sont les différentes alternatives de cadres disponibles pour objet de mappage d'objets dans .NET en dehors de AutoMapper

Actuellement, nous prévoyons d'utiliser AutoMapper, mais avant de finaliser ce cadre, nous cherchons à comprendre tous les autres cadres sont là.

36voto

hazzik Points 4827

18voto

kinstephen Points 163

Je suis passé par un processus similaire récemment en essayant de trouver un mappeur qui couvre vraiment tous mes scénarios. J'ai trouvé ValueInjecter le meilleur de la automapper, emitmapper, et quelques autres sur codeplex.

- Je choisir ValueInjector parce que c'est le plus flexible de tous. J'ai eu l'exigence de la carte de l'entité à viewmodel, et viewmodel de retour à l'entité, profonde clonage où vous avez à la clientèle -> projets> projet, récursive des situations comme client <-> projet, et ajouter/mettre à jour/supprimer des enfants collections.

Hors de la boîte ValueInjector ne supporte pas ça, mais il est cadre est suffisamment extensible à l'appui de cette facilement. Vous pouvez voir mon point d'extension de la présente convention que j'ai posté sur leur forum de discussion...

http://valueinjecter.codeplex.com/discussions/274484

15voto

swannee Points 1177

Vieille question, mais jetez un oeil au FPR si vous êtes en utilisant .Net 4.5...c'est généralement beaucoup plus rapide que AutoMapper (10-50X dans les scénarios, je l'ai utilisé dans) si la performance est critique et prend en charge la plupart AutoMapper scénarios. Rappelez-vous toujours de perf test que les résultats varient selon le scénario. Ce n'est pas aussi performante que EmitMapper, mais malheureusement, EmitMapper semble être devenu un peu abandonné.

http://www.nuget.org/packages/Fpr/

https://github.com/eswann/Fpr

La divulgation...c'est un de mes projets qui a été créé pour une charge élevée de service où AutoMapper a commencé à montrer que l'un de nos goulots d'étranglement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X