Ich verwende Nhibernate, um Elemente von einem Objekt zum anderen abzubilden. Für eines der Elemente in meinen komplexen Objekten muss jedoch eine Bedingung festgelegt sein, damit das Zielobjektelement über einen entsprechend festgelegten Wert verfügt.C# Automapper bedingte Zuordnung
Um im Detail
Mapper.CreateMap<OneObject, AnotherObject>()
.ForMember(
destination => destination.complexelement,
option => option.MapFrom(source=> source.value == enumValue.ToString()
? new object({Id 123 })
: new object ({ Id 567 }))
So zu erklären, können Sie sehen, dass ich ein verschachteltes Objekt auf dem Zielobjekt von einem Wert aus dem Quellobjekt basierend festlegen möge ein Objekt erstellen und es zum Ziel speichern Element. Der obige Beispielcode habe ich versucht, aber es wirft einen Fehler auf, der besagt, dass ich keine Zeichenfolge für einen Lambda-Ausdruck verwenden kann.
Weiß jemand, wie ich ein Objekt basierend auf einer Bedingung setzen kann?
Dank
Was 'enumValue' ist? Und was ist der eigentliche Fehlertext? – stuartd
Emumvalue ist nur zum Vergleich da. Fehlermeldung, die ich Ihnen gegeben habe – Andy5