我有一个带有私有设置器的公共属性的嵌套子类。在父类中,我可以使用 Automapper 映射到子类,并且正在设置私有 setter 的值。我读到的所有内容都指向 Automapper 不支持这一点,并且需要子类中的自定义构造函数来填充私有设置器。
当前版本是否使用反射或其他东西来映射私有设置器?设置器绝对是私有的,因为在父类中我无法设置 Child.Property 但在同一个地方 Mapper.Map 能够设置属性。
我有一个带有私有设置器的公共属性的嵌套子类。在父类中,我可以使用 Automapper 映射到子类,并且正在设置私有 setter 的值。我读到的所有内容都指向 Automapper 不支持这一点,并且需要子类中的自定义构造函数来填充私有设置器。
当前版本是否使用反射或其他东西来映射私有设置器?设置器绝对是私有的,因为在父类中我无法设置 Child.Property 但在同一个地方 Mapper.Map 能够设置属性。
Automapper广泛使用反射,没有理由不使用它来设置私有 setter。
实际上,直到您提出问题,我才知道它有效。
如果我们查看单元测试,我们会发现私有 setter 是自动设置的。请看PrivateSetterInParentWorks。
注意,Silverlight 不支持通过反射设置私有字段。因此,该功能不适用于它。