簡體   English   中英

如何使用 Automapper 避免 foreach 復雜結構

[英]How to use Automapper toavoid foreach for complex structure

我正在嘗試使用自動映射器 map 源和目標實例,

我有一個我創建的示例代碼。 第 82 行我正在嘗試更改和使用自動映射器。 是否可以在那里使用自動映射器。

https://dotnetfiddle.net/bzp9H7

是的,您可以 map 在查看您的代碼后放置一個列表,我認為您不需要 destinationArray 字段的列表或數組。 如果您需要將其用作數組,您只需在destinationArray 之后添加.First()。

  public static IMapper CreateGroboBookingMapper()
    {
        var config = new MapperConfiguration(cfg =>
        {
            cfg.AllowNullDestinationValues = true;

            cfg.CreateMap<Booking, DestinationBooking>()
        .ForMember(dest => dest.processTypeField, opt => opt.MapFrom(src => src.processTypeField))
        .ForMember(dest => dest.travelDate, opt => opt.MapFrom(src => src.Trip.Voyages.FirstOrDefault().DepartureDate))
        .ForMember(dest => dest.destinationArrayField, opt => opt.MapFrom(a => new destinationArray() 
            {
              // Here you can add destinationArray models parameters
            arrivalStationIdField= a.Trip.Voyages.Select(x => x.arrivalStationId).FirstOrDefault().ToString(),
            extraField = *************
        }));
       
        });

        return config.CreateMapper();
    }

這是調試的結果,因為我嘗試了一個值:

調試結果

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM