1.無載荷(with NO Payload)的多對多關(guān)系建模
在數(shù)據(jù)庫中,存在通過一張鏈接表來關(guān)聯(lián)兩張表的情況。鏈接表僅包含連接兩張表形成多對多關(guān)系的外鍵,你需要把這兩張多對多關(guān)系的表導(dǎo)入到實(shí)體框架模型中。
1.1 假設(shè)我們有如下數(shù)據(jù)關(guān)系:
我們有三張表用來存儲Album(專輯)、Artist(藝人)、LinkTable(專輯與藝人的關(guān)系表)。一張“專輯”可以有多個“藝人”,同時一個“藝人”也可以有多張專輯。
1.2 右鍵你的項(xiàng)目,使用entityframework的database first創(chuàng)建實(shí)體模型。注意把這三張表都選上,當(dāng)點(diǎn)擊“完成”之后,實(shí)體框架生成的視圖如圖4-1
圖4-1
1.3 觀察圖4-1可以發(fā)現(xiàn),Album與Artist之間的關(guān)系被映射成了一條多對多的直線,而當(dāng)初選擇的LinkTable表沒有出現(xiàn)在視圖中。這是因?yàn)長inkTable中沒有標(biāo)量屬性,也就是說沒有載荷。實(shí)體框架認(rèn)為,LinkTable存在的意義就是表示Album與Artist之間的關(guān)系的,而上圖足以表示他兩的關(guān)系,所以LinkTable就沒有存在的必要了。但是如果LinkTable中有標(biāo)量屬性,實(shí)體框架則會為他創(chuàng)建相應(yīng)的模型,如下一節(jié)2.1。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26
