Dot-Net
如何在 EF Code First 中映射表拆分?
如何使用 EF Code First 映射表拆分?例如,此處描述了 EDMX 的表拆分。它允許將兩個具有 1:1 關係的實體映射到同一個表中。我知道我可以對實體和復雜類型進行類似的映射,但最大的區別是複雜類型不能延遲載入(或根本不載入),這是表拆分的主要原因。
這是我剛剛獲得 EF 4.1 (RC) 在 Code First 中進行表拆分的方法。
- 定義您的兩個實體。確保在兩個實體中都包含密鑰。此外,在每個實體中包含指向另一個實體的導航屬性。
- 在您的 OnModelCreating 覆蓋中。. . 一個。將兩個實體映射到同一個表。灣。創建兩個表之間的關係。
modelBuilder.Entity<EntityOne>().ToTable("MySingleTable"); modelBuilder.Entity<EntityTwo>().ToTable("MySingleTable"); modelBuilder.Entity<EntityOne>().HasRequired(p => p.NavToEntityTwo).WithRequiredDependent(c => c.NavToEntityOne);這對我有用,但要意識到鑑於 RC 的新穎性,我只能查看有限且簡單的場景。