1
我的对象Box
具有属性SerialNumbers
,它是<SerialNumber>
对象的列表(或ICollection)对象。我需要将每个SerialNumber
的.Name
属性映射到我的BoxedElectrodesRowModel
中的字符串列表中的字符串。尝试使用AutoMapper将对象的属性映射到字符串
这里是我的代码:
c.CreateMap<Box, BoxedElectrodesRowModel>()
.ForMember(dest => dest.BoxId, opts => opts.MapFrom(src => src.BoxID))
.ForMember(dest => dest.SerialNumbers, opts => opts.MapFrom(src => src.SerialNumbers))
.ForMember(dest => dest.DateCreated, opts => opts.MapFrom(src => src.DateCreated));
如果在第三行注意到,我尝试转换dest.SerialNumbers
(这是在型号字符串列表)来src.SerialNumbers
这是一个SerialNumber
ICollection的秒。不过,我特别需要SerialNumber
的名称属性。我试过做src.SerialNumbers.Name
,但LINQ不喜欢那样。
我试图解决这个问题是添加该代码前面的块的上方:
c.CreateMap<SerialNumber, string>()
.ConvertUsing(src => src.Name);
但后来我得到错误“无法转换lambda表达式到类型‘串’,因为它不是一个委托类型” 。
对于AutoMapper,我真的很新,觉得我在黑暗中徘徊。有人能帮助我解决这个问题吗?