2009-05-20 17 views

Antwort

1

Reflektion ist eine Option, wenn Sie dies auf automatisierte Weise tun möchten, sofern die Eigenschaftsnamen leicht zwischen den Objekten zugeordnet werden können.

1

Automapper ist einen Versuch wert, aber am Ende entschied ich, dass es nicht für mich war. Das große Problem mit diesen Arten von Tools ist, dass Sie eine Menge Laufzeit Overhead jedes Mal ein Mapping auftritt. Ich fragte diese same question last week und ich landete meine eigene Lösung (siehe die angenommene Antwort). Es steht Ihnen frei, die Quelle, die ich zur Verfügung gestellt habe, zu ändern. Ich mache keinen Anspruch auf Effektivität, Eignung, Leistung, Sie-break-it-you-to-keep-the-pieces usw., aber es funktioniert gut genug für mich, um Design-Zeit-Objekt zu Objekt-Mapping zu erstellen.

2

MiscUtil eine Antwort auf diese (PropertyCopy) hat, die Expression (.NET 3.5) und ein statisches Feld verwendet den kompilierten Delegat zwischenzuspeichern (so ist es vernachlässigbaren Kosten pro invoke):

DestType clone = PropertyCopy<DestType>.CopyFrom(original); 

Wenn Sie mit 2,0, dann wäre wahrscheinlich Reflexion Ihr Freund. Sie können HyperDescriptor verwenden, um die Leistung zu verbessern, wenn Sie benötigen.

Verwandte Themen