簡體   English   中英

實體框架6與流利api的0.1到0.1關系

[英]Entity Framework 6 0.1 to 0.1 relationship with fluent api

可以說我想在實體框架6中為公司停車場建模:

  • 我有員工和汽車。
  • 雇員可以有車,也可以沒有車。
  • 汽車可以屬於雇員,也可以不屬於雇員。

我知道如何在帶有中間表的關系數據庫中對此建模:

EmployeeCarAssociation
-EmployeeId
-CarId

使用EmpoyeeIdCarId作為主鍵,並且在兩列上都具有EmpoyeeId約束。

但是,如何使用EF6 Fluent Api創建0.1到0.1的關系?

試試這個代碼:

public class Employee
{
    public int Id { get; set; }
    public Car Car { get; set; }
    public int? CarId { get; set; }
}

public class Car
{
    public int Id { get; set; }
    public Employee Employee { get; set; }
}

public class ApplicationDbContext : DbContext
{
    public DbSet<Employee> Employees { get; set; }
    public DbSet<Car> Cars { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Car>()
            .HasOptional(c => c.Employee)
            .WithOptionalDependent(e => e.Car)
            .Map(config =>
            {
                config.MapKey("EmployeeId");
            });

        base.OnModelCreating(modelBuilder);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM