我是EF新手,因此需要創建或使用參考表中的按鍵。 用戶可以在參考表中創建新記錄或可以使用現有記錄。對於我創建了我的實體模型,如下圖所示:EF:如何重新使用新創建的外鍵
Public class MaterialLineEntry()
{
EntryNumber = 0,
OrganisationID=0,
Organisation Organisation
};
和
Public class Organisation()
{
ID = 0,
Description = "Test",
EntityChangeStatus ;
};
這些行條目稱爲報告的另一個實體
Public class Report()
{
List< MaterialLineEntry> materilaLineEntries;
};
一切工作正常,如果我進入裏面的定義詳細信息如下所示,並將對象(報告)附加到UnitOfWork並將其列出。實體框架在參考表中創建記錄,並使用新生成的外鍵將其輸入到行條目表中。
Report report =new Reort();
report. materilaLineEntries.Add(new MaterialLineEntry()
{
EntryNumber=1,
OrganisationID=0,
Organisation=new Organisation()
{
ID = 0,
Description = "Test",
EntityChangeStatus = EntityChangeStatus.Unchanged,
}
})
,但是當我添加兩個對象與同一組織細節行條目:
report. materilaLineEntries.Add(new MaterialLineEntry()
{
EntryNumber=1,
OrganisationID=0,
Organisation=new Organisation()
{
ID = 0,
Description = "Test",
EntityChangeStatus = EntityChangeStatus.Unchanged,
}
})
它應該使用以前創建的外鍵(因爲我可以有一個獨特的constrant)。 因爲我想在參考表中插入重複的記錄。我在這裏需要的是,實體框架工作應該添加第一個組織細節,並且應該使用相同的ID來記錄相同記錄(在本例中爲描述欄)。
請幫我解決這個問題。提前致謝。 (我曾想過將數據逐個添加到外表中,並進一步使用外鍵,但我想這是一個壞主意)。
我終於得到了解決f0r這一點,我們shud設置外鍵/參考對象一次,EF是足夠聰明的使用參考表的新生成的身份對任何consicutive使用(如果我們需要設置外鍵/引用對象) – chandrabhan