繁体   English   中英

Automapper 不适用于列表?

[英]Automapper does not work for Lists?

我有两个类, SaleSaleDTO

当我使用 automapper 映射这两个类的对象时,它将起作用。

但是,如果我这样做:

List<Sale> s = GetSalesFromDatabaseMethod();
List<SaleDTO> sa = Mapping.Map<List<Sale>, List<SaleDTO>>(s);

sa将变为空。 难道我做错了什么?

Map方法基本上是映射的快捷方式:

public static H Map<T, H>(T i) {
    Mapper.CreateMap<T, H>();
    return Mapper.Map<T, H>(i);
}

我从Automapper copy List to List找到了答案。

显然,我创建的快捷方式Mapping.Map<>()不起作用,因为我需要先创建到两个类的映射,然后映射列表,如下所示:

Mapper.CreateMap<Sale, SaleDTO>();
List<SaleDTO> sa = Mapper.Map<List<Sale>, List<SaleDTO>>(s);

不知道有没有人和我一样的错误。

这是我解决这个问题的方法:

List<Sale> s = GetSalesFromDatabaseMethod();
List<SaleDTO> sa = s.Select(item => (Sale) item).ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM