我想實作一個遵守 DDD 和聚合原則的模型。
我有一個Company&之間的多對多關系User,但這些都是聚合根,我想通過參考 Ids 而不是物體型別來模擬它們的關系,即
public class Company
{
public List<int> UserIds { get; set; }
}
public class Users
{
public List<int> CompanyIds { get; set; }
}
是否可以使用 Fluent 模型構建器 API 來實作這一點?即,它會構建一個由列組成的多對多表:| UserId | CompanyId |
uj5u.com熱心網友回復:
當然,您只是選擇退出方便且有用的 EF 多對多模式,該模式具有隱藏的鏈接表,并添加了一流的鏈接物體。例如
public class Company
{
public List<CompanyUser> CompanyUsers { get; set; }
}
public class Users
{
public List<CompanyUser> CompanyUsers { get; set; }
}
public class CompanyUser
{
public int CompanyId {get;set;}
public int UserId {get;set;}
}
并將 CompanyUser 配置為在 (CompanyId,UserId) 上設定其鍵,在 (UserId, CompanyId) 上設定備用鍵(或唯一約束)。
將CompanyUser.Company和CompanyUser.UserNavigation Properties 放在鏈接物體上顯然更方便,但完全是可選的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/368457.html
