omu.valueinjecter 深度克隆与类型不同
我认为我缺少一个关于 valueinjecter 和/或 AutoMapper 的简单概念,但是如何将父级 dto.Entity 深度克隆到 biz.Entity 并包含所有子级?
例如,biz.person.InjectFrom(dto.person)
。我希望 dto.person.AddressList 集合复制到 biz.person.AddressList 集合,即使 dto.Address 和 biz.Address 与类型不同,但具有相同的属性名称。
我的想法是,如果 Parent 属性名称拼写相同,例如 AddressList,那么两个底层对象是否具有不同类型也没关系。它仍然会复制同名的简单类型,如 int、string 等。
谢谢
I think I'm missing a simple concept with valueinjecter and/or AutoMapper, but how do you deep clone a parent dto.Entity to biz.Entity and include all children?
For example, biz.person.InjectFrom(dto.person)
. I want the dto.person.AddressList collection to copy down to biz.person.AddressList collection, even though dto.Address
and biz.Address
are unlike types, but have the same property names.
My thinking is that if the Parent property names are spelled the same, e.g. AddressList, then it wouldn't matter if the 2 underlying objects were of different types. It would still copy same-named simple types like int, string, etc.
thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当对象中的数组/列表具有相同名称但不同类型时(即,类型为 ORMAnimals[] 的名为 Animals 的属性映射到类型为 Animals[] 的名为 Animals 的属性)时,我遇到了同样的问题。
通过对 Chuck Norris 在 Deep Cloning 页面 上的示例代码进行一些细微的调整,我得到了它在我的测试代码中工作:
I was having the same issue when the arrays/lists in the objects have the same names but different types (ie a property named Animals of type ORMAnimals[] mapping to a property named Animals of type Animals[]).
With some minor tweaks to the sample code Chuck Norris has on the Deep Cloning page I got it working in my test code:
我遇到了这个问题,即使使用 CloneInjection 也无法复制具有相同名称和不同类型的属性。所以我改变了 CloneInjection 中的一些内容(我使用的是 ValueInjecter 版本 3.1.3)。
我是这样使用的:
希望有帮助!
I had this issue, even using the CloneInjection wasn't working to copy the properties with same name and diferent types. So I changed a few things in the CloneInjection (I'm using ValueInjecter version 3.1.3).
I used like this:
I hope it helps!