我是EF和流利的API的新手。我的DBA決定他想在公民資格表中將一個人的「主要」公民身份與Is_Primary標誌對應起來。因此,我們的數據庫看起來是這樣的:幫助使用EF4.1流利API映射域模型?
**Person Table**
Person_Id int identity (PK)
First_Name nvarchar(30)
...
**Citizenship_Table**
Citizenship_Person_Id int identity (PK)
Person_Id int
Country_Code char(2)
Is_Primary byte
...
**Country_Table**
Country_Code char(2) (PK)
Country_Name varchar(30)
...
我真的不希望在我的域模型的Is_Primary標誌。相反,我希望我的域看起來像這樣:
public class Person
{
public int Id {get; set;}
...
public virtual ICollection<Country> Citizenships {get; set;}
public Country PrimaryCitizenship {get; set;}
}
public class Country
{
public int Code {get; set;}
public string Name {get; set;}
}
有沒有方法可以映射此場景?
數據庫表結構是用石頭書寫的嗎?如果是的,你不能改變它,我相信這是沒有希望的。這是'Person'和'Country'之間的多對多關係,對吧?然後,您甚至需要爲您的模型中的實體創建連接表(「Citizenship_Table」),因爲這個「Is_Primary」標誌會創建兩個一對多關係而不是單對多關係。 – Slauma