AutoMapper创建内部类的对象,这是怎么回事?

本文关键字:怎么回事 对象 创建 内部类 AutoMapper | 更新日期: 2023-09-27 18:16:51

这可能是非常琐碎的,我只是想知道AutoMapper如何能够使用内部构造函数创建类的实例。

我有4个项目UI BLL ENTITY DAL

BLL拥有所有的映射信息,DAL从数据库中获取数据,并在实体类上创建一个新的实例,实体类有内部构造函数。

in DAL I do

Mapper.Map<dalObjct, EntityObject> (_db.GetItem())

返回类型为EntityObject的对象。这一切都是有效的,但我想知道当AutoMapper的构造函数被标记为内部时,它是如何创建EntityObject的实例的。

AutoMapper创建内部类的对象,这是怎么回事?

AutoMapper如何创建EntityObject的实例,当它的构造函数
标记为内部

Automapper使用反射来检索类型元数据,因此构造函数的可见性不是问题。

为什么automapper要这么做?

因为你已经要求它那样做了。

这不是违反抽象吗?

不,它不是。
Automapper和反射一样,都只是工具。当你使用一些工具时,你必须知道如何使用,何时使用,以及做什么。