je les suivantes DTO objet:Automapper: Carte Un seul objet avec la liste des objets à l'intérieur à la liste juste
public class PriceDto
{
public string Ticker {get; set;}
public double Open {get; set;}
public double Close {get; set;}
}
Les objets source:
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;}
}
En conséquence, je veux obtenir la collecte de PriceDto
objets. Je sais comment faire pour cartographier la propriété Ticker
. Mais, je ne sais pas comment la carte Prices
correctement:
CreateMap<RemoteData, PriceDto>()
.ForMember(d => d.Ticker, opt => opt.MapFrom(s => s.Security.Ticker));
En outre, Automapper ne peut pas trouver la configuration parce que j'ai même RemoteData
, mais je veux IList<PriceDto>
:
var json = await rangeUrl.GetJsonAsync<RemoteData>();
var dtos = _mapper.Map<IList<PriceDto>>(json);
Pour la solution de contournement, j'ai créé la carte de Prices
à PriceDto
au lieu de RemoteData
et puis utilisez simplement foreach
pour affecter Ticker
. Mais, je veux savoir comment le faire avec automapper.
Copie possible de [Possible d'utiliser AutoMapper pour mapper un objet à une liste d'objets?] (Https://stackoverflow.com/questions/18096034/possible-pour-utiliser-automapper-pour-mapper-un-objet- to-list-of-objects) – Rhumborl