Ich habe eine Funktion geschrieben, die die Eigenschaften einer Klasse in eine andere kopiert, um eine Kopie eines Objekts zu erstellen.
So etwas wie
%Vor%wobei myObject und myOtherObject vom selben Typ sind. Ich mache es, indem ich es einfach mache.
%Vor%Ich bin mir ziemlich sicher, dass ich in der Vergangenheit ein .NET-Objekt verwendet habe, das dies automatisch getan hat, durch Reflektion, aber ich kann mich nicht daran erinnern ... oder stelle ich mir vor, dass eine solche Methode existiert?
Ja, mir ist Auto Mapper bekannt, aber ich war mir sicher (nicht so sehr), dass es ein .NET-Objekt gibt, das den Job erledigt. Vielleicht nicht!
Sehr einfach ausgedrückt: Wie wir wissen, sind Klassen Referenztypen in C # .NET, d. h. wenn wir ein Objekt einer Klasse wie
erstellen %Vor%Dann wird C1 (Referenzvariable) auf dem Speicherstapel gespeichert, und das neue Objekt Customer () wird auf Heap gespeichert.
Wenn wir also eine Klasse in eine andere Klasse kopieren, die im Grunde Ihre Frage ist, können Sie so etwas tun:
%Vor%Doing kopiert die C1-Referenzvariable in C2, aber warum habe ich über Stack und Heap geschrieben, weil Sie mit der C2-Referenzvariable die Objekteigenschaften sowohl von C1 als auch von C2 auf dasselbe Objekt in HEAP.Something Like
ändern können %Vor% Wenn Sie jetzt versuchen, auf C1.Name
zuzugreifen, sehen Sie, dass es in "Mukesh" geändert wird.