【发布时间】:2016-02-02 01:05:19
【问题描述】:
我有一个非常简单的模型:
class Bag
{
public int Id { get; set; }
public ICollection<RandomThing> RandomThings { get; set; }
}
class RandomThing
{
public int Id { get; set; }
public String Description{ get; set; }
}
我的上下文 OnModelCreating(在 EF 6 中)类似于:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Bag>()
.ToTable("Bag")
.HasMany(x => x.RandomThings).WithRequired(x => x.Bag).WillCascadeOnDelete();
modelBuilder.Entity<RandomThing>().ToTable("RandomThing");
}
据我所知,没有等效的方法可以做到这一点。我知道cascade deletes are not supported。但是,我想知道,对我的代码示例中定义的一对多关系进行建模的最佳方法是什么?似乎所有这些东西都已经消失(或尚未实施)。
我已经看到了一个 DbContext 的示例 (here),与我想要的完全一样,但它实际上是错误的并且不起作用。如果我尝试下载该源代码,设置我的环境,并在包含帖子的博客实体上进行保存,那么这些帖子不会像人们想象的那样被保存。
有什么解决方法吗?
【问题讨论】:
标签: c# entity-framework entity-framework-core