我们有一些代码可以检查setter中是否存在null / empty(并根据它做了一些事情)。然后它继续前进,并将私有变量的集合设置为value
。
当我们使用AutoMapper设置对象时,这会导致我们出现错误。当第一次调用setter时,private字段中已经有了值(不知何故)。
我整理了一个小样本程序,显示了我想要显示的内容。 myPrompts
是调用set
的{{1}}时已设置的私有变量:
Prompts
输出:
About to map About to set prompts. Pre-count: 3 Prompts set. Post-count: 3 About to set prompts. Pre-count: 3 Prompts set. Post-count: 3 Done Mapping
写出" Pre-Count" myPrompts变量应该为空或null,但它已经包含映射值。
如何/为何已填充此内容?没有打电话给安装者? Automapper是否对私有变量做了些什么?如果是这样,什么?