|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
完全不一样的。.net其实我也说不太清,.net可以把他理解为跟J2EE相对的工具。c++主要做系统相关的开发你要学.net的话就应该学C#。(其实微软在.NET平台上也考虑了给C++留一个地位。AutoMapper是一个.NET的对象映照工具。
项目地点:https://github.com/AutoMapper/AutoMapper。
匡助文档:https://github.com/AutoMapper/AutoMapper/wiki
次要用处
范畴对象与DTO之间的转换、数据库查询了局映照至实体对象。
利用条记
场景1:源范例BlogEntry,方针范例BlogPostDto,指定属性举行映照(BlogEntry.ID对应于BlogPostDto.PostId)。
代码:
- AutoMapper.Mapper.CreateMap<BlogEntry,BlogPostDto>().ForMember(dto=>dto.PostId,opt=>opt.MapFrom(entity=>entity.ID));
复制代码 场景2:IDataReader映照至实体类
代码:
- using(IDataReaderreader=_db.ExecuteReader(command)){if(reader.Read()){returnAutoMapper.Mapper.DynamicMap<BlogConfig>(reader);}}
复制代码 场景3:列表范例之间的映照,好比:源范例List<BlogSite>,方针范例List<BlogSiteDto>
代码以下:
- AutoMapper.Mapper.CreateMap<BlogSite,BlogSiteDto>();varblogSiteDto=AutoMapper.Mapper.Map<List<BlogSite>,List<BlogSiteDto>>(blogSite);
复制代码 注:必需要先经由过程CreateMap创建BlogSite与BlogSiteDto的映照干系。
场景4:在映照时为方针实例的属性指定值
代码以下:
- varblogSiteDto=newBlogSiteDto();AutoMapper.Mapper.CreateMap<BlogEntry,BlogPostDto>().ForMember(dto=>dto.BlogSiteDto,opt=>opt.UseValue(blogSiteDto));
复制代码 复制代码
注:BlogSiteDto是BlogPostDto的一个属性。
以前很热炒跨平台,主要是由于硅谷挑战微软霸主地位的热情,但是冷静下来后,跨平台往往不是那么一回事。假设你有个软件,所谓的跨平台,你只需要为第二个平台上重新编译一次就行了,这样很难么? |
|