具有相关实体克隆的Codefluent实体

时间:2018-09-18 02:48:12

标签: clone codefluent

如果我有一个CodeFluent实体,我想为其创建一个单独的/唯一的/不同的副本,可以在不更改原始实体的情况下更改属性值,则可以使用该实体的clone方法来创建一个新的(副本)原始实体,以便该实体的相关(子)实体也被复制?

假设我有一个 Products 集合,其中每个产品都有一个相关的 Parts 集合。

  • 产品01
    • Part0101
    • Part0102
  • 产品02
    • Part0201
    • Part0202
    • Part0203

使用此代码,我将“ Product01”加载到 cfe_Product 中,并将 cfe_Product 克隆到 cfe_ProductBackup 中:

Product cfe_Product;
cfe_Product = Product.LoadByEntityKey("Product01");

Product cfe_ProductBackup;
cfe_ProductBackup = cfe_Product.Clone(true);

如果我更改 cfe_Product cfe_ProductBackup

description 属性
cfe_Product.description = "aaaa";
cfe_ProductBackup.description = "bbbb";

结果符合预期。也就是说, cfe_Product cfe_ProductBackup 的描述是不同的。

如果我更改了相关的零件描述

cfe_Product.relatedPart(0).description = "cccc";
cfe_ProductBackup.relatedPart(0).description = "dddd";

.relatedPart(0)描述( cfe_Product cfe_ProductBackup )都是相同的,“ dddd”。

如何使用克隆方法制作深层副本-一个新的 Product 实体,并具有新的相关的 Part 实体,这些实体是原始数据的副本?

提前感谢您的帮助!

0 个答案:

没有答案