2017-10-13 109 views
-1

我在汽車行業的三個實體模型如下:如何選擇聚合根

public class Manufacturer 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public ICollection<Model> Models { get; set; } 
    public ACManufacturer() 
    { 
     AutoCareModels = new List<ACModel>(); 
    } 
} 

public class Model 
{ 
    public int Id { get; set; } 
    public string Name { get; set; }   
    public int NumberOfSeats { get; set; } 
    public Manufacturer Manufacturer { get; set; } 
    public ICollection<ManufacturedYear> ManufacturedYears { get; set; }  
    public Model() 
    { 
     ManufacturedYears = new List<ManufacturedYear>(); 
    } 
} 

public class ManufacturedYear 
{ 
    public int Id { get; set; } 
    public int ProductionYear { get; set; } 
    public Model Model { get; set; } 
} 

請告訴我該如何選擇聚合根或differente方式三個實體

建模謝謝你每天多

回答

0

答案取決於你對這些模型做什麼。你的應用正在做什麼?如果10個用戶正在更新此應用中的數據 - 他們如何分配他們的工作?什麼是交易界限? 如果這10個用戶通常使用10種不同的模型,您的屏幕將圍繞模型進行組織,那麼Model就是您的聚合根。

+0

感謝您的回覆。 在應用程序中,以上三個實體被用作參考實體,我當前正在選擇製造商的聚合根。所以當我加載製造商時,我也必須加載 –

+0

感謝您的回覆。如果我選擇Model作爲聚合根,那麼製造商將會有一個聚合根?在我已經創建的應用程序中,以上三個實體被用作參考實體,我目前正在選擇Manufacture作爲聚合根。你能告訴我這是對還是不對? 如果模型變得更深入,選擇聚合體的合適方式是什麼? –