一、什么是復雜類型?

書中說道:“復雜類型也可視作值類型(?)可以作為附加屬性添加到其他類。復雜類型與實體類型的區(qū)別在于復雜類型沒有其自己的鍵。它是依賴于其"宿主"類型跟蹤變化 和持久化。一個沒有Key屬性的類型,并且作為屬性映射到一個或多個類型中,Code First就會將其視作為復雜類型。Code First將預設(shè)復雜類型的屬性出現(xiàn)在宿主類型映射到數(shù)據(jù)庫的表中?!?/p>

說簡單一點就是,項目中有個類A,這個A,會被其他類引用到比如:實體類B 和 實體類C,但是建立數(shù)據(jù)庫的時候,我們不想為這個分割類A建立表,而是把A類中的屬性等建立到 B 和 C 映射的表中,這時候,我們管 A 叫做復雜類型。

二、復雜類型和實體類型的區(qū)別

首先還是定義兩個類Person類和IDCard類還有數(shù)據(jù)庫上下文。

移動開發(fā)培訓,Android培訓,安卓培訓,手機開發(fā)培訓,手機維修培訓,手機軟件培訓

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Data.Entity;using EFCodeFirstModels;using System.Configuration;namespace EFCodeFirstDataAccess
{    public class EFCodeFirstDbContext:DbContext
    {        public EFCodeFirstDbContext() : base("MyStrConn")
        {
        }        public DbSet<Pe
        
		

網(wǎng)友評論