Heim > Backend-Entwicklung > C++ > Wie ignoriere ich Eigenschaften bei AutoMapper-Zuordnungen?

Wie ignoriere ich Eigenschaften bei AutoMapper-Zuordnungen?

Mary-Kate Olsen
Freigeben: 2024-12-27 09:46:11
Original
563 Leute haben es durchsucht

How to Ignore Properties During AutoMapper Mappings?

Eigenschaften in Automapper-Zuordnungen ignorieren

Beim Arbeiten mit Automapper kann es notwendig sein, bestimmte Eigenschaften von der Zuordnung zwischen Quell- und Zielobjekten auszuschließen. Dies kann auftreten, wenn das Zielobjekt schreibgeschützte oder berechnete Eigenschaften enthält, die für die Zuordnung aus der Quelle nicht geeignet wären.

Ein solches Szenario ist, wenn das Quellobjekt (z. B. OrderModel) eine Eigenschaft (ProductName) hat. das im Zielobjekt nicht vorhanden ist (z. B. Bestellungen). Der Versuch, die Zuordnung durchzuführen mit:

Mapper.CreateMap<OrderModel, Orders>();
Nach dem Login kopieren

Führt zu einer Ausnahme, die darauf hinweist, dass die ProductName-Eigenschaft nicht zugeordnet ist.

Um zu verhindern, dass Automapper versucht, die ProductName-Eigenschaft zuzuordnen, verwenden Sie die Funktion Ignore( )-Methode:

CreateMap<OrderModel, Orders>().ForMember(x => x.ProductName, opt => opt.Ignore());
Nach dem Login kopieren

Alternativ wurde in AutoMapper-Versionen nach 8.0 die Ignore()-Methode verwendet ersetzt durch DoNotValidate():

CreateMap<OrderModel, Orders>().ForMember(x => x.ProductName, opt => opt.DoNotValidate());
Nach dem Login kopieren

Durch Angabe der Option Ignore() oder DoNotValidate() schließt Automapper die ProductName-Eigenschaft vom Zuordnungsprozess aus, löst die Ausnahme auf und ermöglicht die erfolgreiche Fortsetzung der Zuordnung.

Das obige ist der detaillierte Inhalt vonWie ignoriere ich Eigenschaften bei AutoMapper-Zuordnungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage