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

Wie ignoriere ich Eigenschaften bei AutoMapper-Zuordnungen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-27 09:46:11566Durchsuche

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>();

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());

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());

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!

Stellungnahme:
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