CQRS中单个事务中的多个聚合根创建

时间:2010-09-12 11:06:14

标签: cqrs

我想知道如何在CQRS中创建多个聚合根。

示例:我有一个手机聚合根和Simc​​ard聚合根。身份证 从这些聚合应该是订阅聚合根的一部分。

我需要创建一个基于SimCard的订阅聚合,并且系统中不存在Handset.SimCard和Handset聚合。它们是在创建Subscription时创建的。 删除订阅时,不会删除SimCard和Handset。  商业原因:用户可能会将不同的SimCard插入同一手机或手机支持双SimC卡。

业务规则:  电话号码应该是唯一的。  手机序列号应该是唯一的。  一个订阅与一个手机相关联  一部手机与一个或多个电话号码相关联。

Class Handset { 
  String serialNumber 
 Handset(UUID id,serialNumber){ 
    super(id); 
    this.serialNumber=serialNumber; 
} 
} 

Class SimCard{ 
  String phoneNumber 
  SimCard(UUID id, String phoneNumber){ 
     super(id); 
        this. phoneNumber= phoneNumber;
  } 
 } 

Class Subscription { 
     UUID id 
     UUID deviceid 
      UUID simCardid 

    Subscription (UUID id, UUID deviceid, UUID simCardid){ 
             Super(id); 
             This. Deviceid= deviceid; 
             This. simCardid= simCardid; 
     } 
     }
  • 隐藏引用的文字 -
  • 显示引用文字

1 个答案:

答案 0 :(得分:3)