zoukankan      html  css  js  c++  java
  • EntityFramework 实体拆分与表拆分

    摘录自https://msdn.microsoft.com/zh-cn/data/jj591617

    * 将实体类型的 CLR 属性映射到数据库中的多个表(实体拆分)

    实体拆分允许一个实体类型的属性分散在多个表中。在以下示例中,Department 实体拆分到两个表中:Department 和 DepartmentDetails。实体拆分通过多次调用 Map 方法将一部分属性映射到特定表。

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
    modelBuilder.Entity<Department>() .Map(m => { m.Properties(t => new { t.DepartmentID, t.Name }); m.ToTable("Department"); }) .Map(m => { m.Properties(t => new { t.DepartmentID, t.Administrator, t.StartDate, t.Budget }); m.ToTable("DepartmentDetails"); });
    }

    * 将多个实体类型映射到数据库中的一个表(表拆分)
    以下示例将使用同一个主键的两个实体类型映射到同一个表。

    modelBuilder.Entity<OfficeAssignment>() 
        .HasKey(t => t.InstructorID); 
                 
    modelBuilder.Entity<Instructor>() 
        .HasRequired(t => t.OfficeAssignment) 
        .WithRequiredPrincipal(t => t.Instructor); 
     
    modelBuilder.Entity<Instructor>().ToTable("Instructor"); 
     
    modelBuilder.Entity<OfficeAssignment>().ToTable("Instructor");
  • 相关阅读:
    几种芯片封装
    Finder 快捷键
    Linux dnsmasq 服务
    java: private, protected, public
    java final
    Jenkins 搭建
    一款工作记录软件
    MacOS 修改主机名
    Ubuntu 静态IP
    adb tcp 调试
  • 原文地址:https://www.cnblogs.com/gmcn/p/5879449.html
Copyright © 2011-2022 走看看