【发布时间】:2019-10-09 21:06:23
【问题描述】:
public class Car
{
public int Id { get; set; }
public string Name { get; set; }
public Owner Owner { get; set; }
}
public class Owner
{
public int Id { get; set; }
public string Name { get; set; }
public IEnumerable<Country> VisitedCountries { get; set; }
}
public class Country
{
public int Id { get; set; }
public string Name { get; set;
public Owner Owner { get; set; }
}
我将这种关系映射为
public class CarConfiguration : IEntityTypeConfiguration<Car>
{
public void Configure(EntityTypeBuilder<Car> builder)
{
builder.ToTable("Car");
builder.HasKey(x => x.Id);
builder.Property(x => x.Id).HasColumnName("Id").ValueGeneratedOnAdd();
builder.HasOne(x => x.Owner);
}
}
目前,我将 OwnerConfiguration 文件添加为单独的配置文件
public void Configure(EntityTypeBuilder<Owner> builder)
{
builder.ToTable("Owner");
builder.HasMany(x => x.VisitedCountries);
...
}
我的问题是:如何重构它并仅在地图上使用 配置文件(例如 CarConfiguration)并删除 所有者配置文件?
【问题讨论】:
-
您可以在 DbContex 的 OnConfiguring 覆盖中配置所有实体。
标签: c# .net entity-framework asp.net-core