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如何创建
EntityObject
的实例,当它的构造函数
标记为内部
Automapper使用反射来检索类型元数据,因此构造函数的可见性不是问题。
为什么automapper要这么做?
因为你已经要求它那样做了。
这不是违反抽象吗?
不,它不是。
Automapper和反射一样,都只是工具。当你使用一些工具时,你必须知道如何使用,何时使用,以及做什么。