CSharp - Automapper IEnumerable <something> 到 IEnumerable <somethingelse>,但不创建映射配置

  显示原文与译文双语对照的内容

我无法获得以下工作,其中 array 是 array的:customercontract


Mapper.Map<IEnumerable<Customer>>(array);

Mapper.Map<IEnumerable<CustomerContract>, IEnumerable<Customer>>(array);

Mapper.Map<Array, List<Customer>>(array);

在我的头脑中,第一个例子应该足够了,但是我不能任意工作。 我已经阅读了 automapper ( https://github.com/AutoMapper/AutoMapper/wiki/Configuration )的配置 wiki,但是我不明白为什么应该这样做。 所有Automapper需要的内容都在命令中定义。 它是( 这两个对象,它是一个 List )的类型,我希望它映射到哪个对象。

我只是不理解Automapper的核心概念?

我的异常声音如下:

缺少类型映射配置或者不支持的映射。
映射类型:rncustomercontract -> customerrnstimline 。xplorer 。repository 。customercontract 。-> Stimline.Xplorer.BusinessObjects.Customer
目标路径:List`1 [0 ]
源值:Stimline.Xplorer.Repository.CustomerService.CustomerContract

时间: 原作者:

you映射到 ienumerable 。Automapper可以映射到具体类型而不是接口。

第一个 register 映射( 查看"缺少类型映射或者不支持的映射") 你必须使用CreateMap一次执行性能


Mapper.CreateMap<something, somethingelse>();

替代:


Mapper.Map<IEnumerable<Customer>>(array);

尝试这个:


Mapper.Map<List<Customer>>(array);

...