以下代码之间有什么区别;
List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader()));
var ogr = AutoMapper.Mapper.Map<IDataReader, IList<Ogrenci>>(dt.CreateDataReader());
Run Code Online (Sandbox Code Playgroud)
当我尝试使用下面的代码时;
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());
Run Code Online (Sandbox Code Playgroud)
我不能使用下面的代码;
List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader()));
Run Code Online (Sandbox Code Playgroud)
但我可以使用下面的代码;
var ogr = AutoMapper.Mapper.Map<IDataReader, IList<Ogrenci>>(dt.CreateDataReader());
Run Code Online (Sandbox Code Playgroud)
你有什么建议?
谢谢.
当您在编译时不知道源类型时,将使用AutoMapper中的DynamicMap.你不能使用的原因
List<Ogrenci> ogrenci = AutoMapper.Mapper.DynamicMap<IDataReader, List<Ogrenci>>((dt.CreateDataReader()));
Run Code Online (Sandbox Code Playgroud)
是因为DynamicMap不需要您指定源类型,只需要指定目标类型.
| 归档时间: |
|
| 查看次数: |
13529 次 |
| 最近记录: |