【发布时间】:2017-10-13 08:43:51
【问题描述】:
我有以下 dto 对象:
public class PriceDto
{
public string Ticker {get; set;}
public double Open {get; set;}
public double Close {get; set;}
}
源对象:
public class RemoteData
{
public Security Security { get; set; }
public IList<Prices> Prices{ get; set; }
}
public class Security
{
public string Ticker {get; set;}
}
public class Prices
{
public double Open {get; set;}
public double Close {get; set;}
}
结果,我想收集PriceDto 对象。我知道如何映射Ticker 属性。但是,我不知道如何正确映射Prices:
CreateMap<RemoteData, PriceDto>()
.ForMember(d => d.Ticker, opt => opt.MapFrom(s => s.Security.Ticker));
另外,Automapper 找不到配置,因为我有一个 RemoteData,但我想得到 IList<PriceDto>:
var json = await rangeUrl.GetJsonAsync<RemoteData>();
var dtos = _mapper.Map<IList<PriceDto>>(json);
对于解决方法,我创建了从Prices 到PriceDto 而不是RemoteData 的映射,然后只使用foreach 分配Ticker。但是,我想了解如何使用 automapper 进行操作。
【问题讨论】:
标签: c# automapper