我有Source类和Destination类要映射。目标类是诸如Person之类的通用类,它将用作我的某个类(MainClass)中各个字段(例如父亲,母亲,兄弟等)中的一个字段。我如何将来自父亲的数据从源映射到目标,母亲等
我可以创建
CreateMap<Source, MainClass>()
.ForMember(dest => dest.Mother, m => m.MapFrom(source => source))
.ForMember(dest => dest.Father, m => m.MapFrom(source => source))
.ForMember(dest => dest.Brother, m => m.MapFrom(source => source));
Mapper.CreateMap<Source, Destination>()
.ForMember(dest => dest.Name, m => m.MapFrom(source => source.motherName))
.ForMember(dest => dest.ID, m => m.MapFrom(source => source.motherId))
.ForMember(dest => dest.Address, m => m.MapFrom(source => source.motherAddress));
但是我该如何处理父亲,兄弟等人的映射
Mapper.CreateMap<Source, Destination>()
.ForMember(dest => dest.Name, m => m.MapFrom(source => source.FatherName))
.ForMember(dest => dest.ID, m => m.MapFrom(source => source.FatherId))
.ForMember(dest => dest.Address, m => m.MapFrom(source => source.FatherAddress));
答案 0 :(得分:-1)
好,所以这是记事本编辑器中未经测试的代码:D
您可以尝试此操作,并根据需要进行更改。从一开始这是行不通的!
opt.MapFrom(source => SetName(source,“ Mother”)))
location = (GsmCellLocation) telephony.getCellLocation();
String lac = String.valueOf(location.getLac());
String cid = String.valueOf(location.getCid());
也许您需要调试一下才能使其正常运行,但是您可以通过某种方式使其实现。
使用自动映射器可能有更好的解决方案,但是我暂时只有这个想法。
希望这可以帮助您,即使这还没有完成! (对不起,我的时间太少了)