2011-12-14 3 views
1

Вот моя оригинальная модель:Mapping сложные модели с Automapper

public class MyClass 
{ 
    public string Name{get;set;} 
    public double Latitude{get;set;} 
    public double Longitude{get;set;} 
    public string Street{get;set;} 
    public string City{get;set;} 
    public string State{get;set;} 
    public string Zip{get;set;} 
} 

И я хочу, чтобы отобразить его в этом для целей сериализации JSON:

public class MyNewClass 
{ 
    public string Name{get;set;} 
    public Location{get;set;} 
} 

public class Location 
{ 
    public string Street{get;set;} 
    public string City{get;set;} 
    public string State{get;set;} 
    public string Zip{get;set;} 
    public Coordinates Coordinates{get;set;} 
} 

public class Coordinates 
{ 
    public double Latitude{get;set;} 
    public double Longitude{get;set;} 
} 

Я не могу показаться, чтобы выяснить право способ настройки отображения.

ответ

1

Я смог наконец разобраться. Каждый объект должен быть отображен в результате.

Mapper.CreateMap<MyClass, Coordinates>(); 
    Mapper.CreateMap<MyClass, Location>().ForMember(dest => dest.Coordinates, opt => opt.MapFrom(src => src)); 
    Mapper.CreateMap<MyClass, MyNewClass>().ForMember(dest => dest.Location, opt => opt.MapFrom(src => src)); 
Смежные вопросы