2010-04-14 11 views
6

Próbuję odwzorować właściwość ReferralContract.AssessmentId na Referral.Assessment.Id Poniższy kod działa, ale jestem pewien, że istnieje bardziej przejrzysty sposób ... Proszę powiedz to tak ;-)AutoMapper Jak odwzorować zagnieżdżony obiekt z ObjectId

// Destination classes 
public class Referral 
{ 
    public Referral() 
    { 
     Assessment = new Assessment(); 
    } 

    public int Id { get; set; } 
    public Assessment Assessment { get; set; } 
} 

public class Assessment 
{ 
    public int Id { get; set; } 
} 

// Source Class 
public class ReferralContract 
{ 
    public int Id { get; set; } 
    public int AssessmentId { get; set; } 
} 

mapowanie Automapper używam jest

Mapper.CreateMap<ReferralContract, Referral>() 
     .ForMember(x => x.Assessment, 
      opt => opt.MapFrom(scr => new Assessment { Id = scr.AssessmentId })); 
+0

Mam podobną sytuację z obiektem DateTime.Date mapowanie do/z obiektu. WartośćClub.Date ... Otrzymuję komunikat "Nie można odlać obiektu typu" System.DateTime ", aby wpisać" Obiekt. Błąd SubClass, ale próbowałeś dokładnie tego samego inicjowania mapowania ... żadnych sugestii? – beauXjames

Odpowiedz

3

na razie to jest najczystszym sposobem. Konstrukcja AutoMappera nie jest zoptymalizowana pod kątem tych scenariuszy odwrotnego mapowania, ale jest to coś, na co patrzę w przyszłych wersjach.

Powiązane problemy