Tôi có sau dto đối tượng:Automapper: Bản đồ đối tượng duy nhất với danh sách các đối tượng bên trong để chỉ danh sách
public class PriceDto
{
public string Ticker {get; set;}
public double Open {get; set;}
public double Close {get; set;}
}
Đối tượng nguồn:
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;}
}
Trong kết quả, tôi muốn để có được bộ sưu tập của PriceDto
đối tượng. Tôi biết cách lập bản đồ thuộc tính Ticker
. Nhưng, tôi không có ý tưởng làm thế nào để lập bản đồ Prices
một cách chính xác:
CreateMap<RemoteData, PriceDto>()
.ForMember(d => d.Ticker, opt => opt.MapFrom(s => s.Security.Ticker));
Ngoài ra, Automapper không thể tìm thấy cấu hình bởi vì tôi có đơn RemoteData
, nhưng tôi muốn để có được IList<PriceDto>
:
var json = await rangeUrl.GetJsonAsync<RemoteData>();
var dtos = _mapper.Map<IList<PriceDto>>(json);
Đối với workaround, tôi đã tạo bản đồ từ Prices
đến PriceDto
thay vì RemoteData
và sau đó chỉ cần sử dụng foreach
để gán Ticker
. Nhưng, tôi muốn thực hiện và làm thế nào để làm điều đó với automapper.
Bản sao có thể có của [Có thể sử dụng AutoMapper để ánh xạ một đối tượng vào danh sách đối tượng?] (Https://stackoverflow.com/questions/18096034/possible-to-use-automapper-to-map-one-object- to-list-of-objects) – Rhumborl