【发布时间】:2019-01-04 19:12:24
【问题描述】:
我正在尝试使用 Fluent API 实现一对一或多对一的关系,但目前没有成功。尤其是在暂时不起作用的删除级联上。
Event和Location两个类之间需要实现关系。一个事件至少有一个位置,另一方面,一个位置可以归因于不同的事件。
编辑:一个事件有一个确切的位置而不是“至少一个”。对此感到抱歉。
当我删除一个事件并且没有更多使用相关位置的事件时,也需要删除该位置。只要位置被事件使用,位置仍然需要被存储,因为它是一个事件所必需的。
这是我的代码:
Fluent API
modelBuilder.Entity<Event>()
.HasRequired<Location>(c => c.Location)
.WithMany();
.WillCascadeOnDelete();
课堂活动
[Key]
public Guid EventID { get; set; } = Guid.NewGuid();
public string Description { get; set; }
public Location Location { get; set; }
上课地点
[Key]
public Guid LocationID { get; set; } = Guid.NewGuid();
public string Description { get; set; }
【问题讨论】:
-
您的代码没有问题。它应该工作。问题出在其他地方。
标签: c# api entity fluent relationships