我有一個連接表,它有一個字段,我需要進入一個實體並具有可更新性。我有下面的表格設置,我需要的列是「Account
」表中的「PersonelleID
」。現在,可能有多個,所以在這種情況下,有一個小學的概念(想像你是一個從一所學校轉到另一所學校的學生,你會擁有同一個帳戶,但有多所學校)。實體框架映射連接表字段
任何想法如何我可以把它帶入實體世界?生成數據庫忽略連接表上的這個字段(可能是因爲它不知道把它放在哪裏)。
試圖看看最好的路線是什麼。
我有一個連接表,它有一個字段,我需要進入一個實體並具有可更新性。我有下面的表格設置,我需要的列是「Account
」表中的「PersonelleID
」。現在,可能有多個,所以在這種情況下,有一個小學的概念(想像你是一個從一所學校轉到另一所學校的學生,你會擁有同一個帳戶,但有多所學校)。實體框架映射連接表字段
任何想法如何我可以把它帶入實體世界?生成數據庫忽略連接表上的這個字段(可能是因爲它不知道把它放在哪裏)。
試圖看看最好的路線是什麼。
,如果您使用的是代碼優先方法,你將創造有外鍵帳戶和學校,你的額外屬性連接表的實體。
public class Account
{
public int AccountId { get; set; }
public string UserName { get; set;}
}
public class AccountSchool
{
[ForeignKey("Account")]
public int AccountId { get; set; }
[ForeignKey("School")]
public string CEEBCodeId { get; set; }
public string PersonelleID { get; set; }
}
public class School
{
[Key]
public string CEEBCodeId { get; set; }
public string Name { get; set;}
}
這是多麼我已經做到了和這裏的是一篇文章,解釋如何做到這一點還有: http://www.itq.nl/blogs/post/Code-First-Entity-Framework-Additional-properties-on-many-to-many-join-tables.aspx
我想通過代碼優先的方式,但我使用的是生成的實體模型。任何方式在那裏做? – Dave
您使用模型 - 優先的方法或數據庫第一。這個問題還不清楚,因爲你提到'生成數據庫忽略連接表上的這個字段'。你是從模型生成數據庫嗎? – Yakimych
對不起,我正在使用數據庫優先方法。 – Dave
如果你從數據庫中生成模型,並且你的表包含一個額外的字段(除了兩個Id),它的實體應該由EF生成(你不應該做任何特殊的事情來實現它)。你使用什麼版本的EF?您是否試過刪除模型並從頭開始生成,或者您是否嘗試更新現有模型? – Yakimych