[英]Using automapper for nested objects
我正在使用個人資料並在以下方面尋找最佳方法,但我的個人資料中的內容不起作用。
public EbayItemProfile()
{
CreateMap<Item, EbayItem>()
.ForMember(dest => dest.Availability.ShipToLocationAvailability.Quantity, opt => opt.MapFrom(src => src.Quantity))
.ForMember(dest => dest.Sku, opt => opt.MapFrom(src => src.Sku))
.ForMember(dest => dest.Product.Title, opt => opt.MapFrom(src => src.Name));
}
這是我正在嘗試的一些示例 object 設置 map
var items = new List<Item>()
{
new Item()
{
Quantity = "2",
Sku = "Test-Sku-2",
Name = "Test-item-2"
}
};
到->
var expected = new List<EbayItem>()
{
new EbayItem()
{
Availability = new Availability()
{
ShipToLocationAvailability = new ShipToLocationAvailability()
{
Quantity = "2"
}
},
Sku = "Test-Sku-2",
Product = new Product()
{
Title = "Test-item-2"
}
}};
任何人都可以在這里提供幫助或建議嗎? .NET 6.0,自動映射器 11.0.0
您可以使用.ForPath()
方法。 我已經創建了一個映射配置文件,這應該適用於您的用例。
CreateMap<Item, EbayItem>()
.ForPath(dest => dest.Availability.ShipToLocationAvailability.Quantity, opt => opt.MapFrom(src => src.Quantity))
.ForMember(dest => dest.Sku, opt => opt.MapFrom(src => src.Sku))
.ForPath(dest => dest.Product.Title, opt => opt.MapFrom(src => src.Name));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.