我们为每个对象创建了带有重复选项的屏幕。例如:在创建新客户以及详细信息时,用户可以选择现有客户将关联的组从现有用户复制到新用户。所以我想知道如何为 1:n 和 m:n 场景分配新客户的属性。
对于“客户”和“客户组”。以下方法可以正常工作吗?
Customer existing = repo<Customer>(id); Customer newCust = new Customer(); for(var group in existing.Groups) newCust.CustomerGroups.Add(new CustomerGroup(){ **AllpropertiesexceptID**, **Customer=newCust** } );
对于 Order 和 OrderItems,由于其 m:n 关系,只需将现有项目附加到新订单。
现有订单 = repo(id); 订单 newOrder = new Order();
for(var item in existing.Items) newOrder.Items.Add(item);
是否需要为现有订单或客户执行 Session.Evict 以执行这些操作。