我真的需要有人幫助我充分理解如何與實體框架4 CTP 5,POCO進行多對多的關係。我需要了解3個概念:實體框架4 CTP 5 POCO - 多對多的配置,插入和更新?
- 如何將我的模型配置爲表示 某些表是多對多的。
- 如何正確插入。
- 如何正確地進行更新。
這裏是我當前型號:
public class MusicSheet
{
[Key]
public int ID { get; set; }
public string Title { get; set; }
public string Key { get; set; }
public virtual ICollection<Author> Authors { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
public class Author
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public string Bio { get; set; }
public virtual ICollection<MusicSheet> MusicSheets { get; set; }
}
public class Tag
{
[Key]
public int ID { get; set; }
public string TagName { get; set; }
public virtual ICollection<MusicSheet> MusicSheets { get; set; }
}
正如你所看到的,MusicSheet
可以有很多Authors
或Tags
和Author
或Tag
可以有多個。
同樣,我的問題是:
- 做什麼的
EntityTypeConfiguration
設置 映射它們之間的 關係,以及一個表/對象 與帶許多一對多 的關係。 - 如何插入新的樂譜 (它可能有多個 作者或多個標籤)。
- 如何更新樂譜。對於 例如,我可以設置TAGA, TAGB到MusicSheet1,但後來我必須將代碼更改爲塔加 和湘火炬。好像我需要 先檢查,看看標籤 已經存在,如果沒有,插入 新的標籤,然後將其與 關聯的樂譜(所以我不 重新插入TAGA? )。或者這是 東西已經由 框架處理?
非常感謝。我真的很希望完全理解它,而不是完全理解發生了什麼。特別是在#3。
非常感謝,我得到了#1&#2回答並理解:)在我的更新問題上:我需要找到現有的標籤/作者並在添加新標籤之前將其刪除?我不能只向他們提供任何標籤/作者和框架,只是出去並更新自己?只要確保:)再次感謝。 – Saxman 2011-02-14 16:41:09