2013-08-28 2 views
7

아래 코드 간의 차이점은 무엇입니까?동적지도가있는 노멀 맵과 오토 데스크의 차이점

아래 코드를 사용하려고하면;

AutoMapper.Mapper.CreateMap<IDataReader, Ogrenci>().ForMember(dest => dest.Numarasi, opt => opt.MapFrom(src => Convert.ToInt32(src["Numara"]))) 
      .ForMember(dest => dest.Adi, opt => opt.MapFrom(src => Convert.ToString(src["Ad"]))) 
      .ForMember(dest => dest.Soyadi, opt => opt.MapFrom(src => Convert.ToString(src["Soyad"]))); 

     List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader())); 
     var ogr = AutoMapper.Mapper.Map<IDataReader, IList<Ogrenci>>(dt.CreateDataReader()); 

나는 아래의 코드를 사용하여 사용할 수 없습니다;

List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader())); 

하지만 난 아래의 코드를 사용할 수 있습니다;

var ogr = AutoMapper.Mapper.Map<IDataReader, IList<Ogrenci>>(dt.CreateDataReader()); 

귀하의 의견은 무엇입니까?

감사합니다.

답변

6

AutoMapper의 DynamicMap은 컴파일 타임에 소스 유형을 모르는 경우에 사용됩니다. DynamicMap는 소스 유형 만 대상 유형을 지정할 필요가 없기 때문에 당신이

List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader())); 

를 사용할 수없는 이유입니다.

AutoMapper features: Dynamic Mapping