我正在使用ASP.NET Core 2.2和EF。我有这些实体:
public class ActionCategory
{
public short Id { get; set; }
[Required]
public string Name { get; set; }
public IEnumerable<Action> Actions { get; set; }
}
public class Action
{
public string Id { get; set; }
[Required]
public string Name { get; set; }
public short CategoryId { get; set; }
[ForeignKey("CategoryId")]
public ActionCategory Category { get; set; }
}
如果所有ActionCategory
被删除,我想自动删除Actions
。我知道我可以自己实现此逻辑,但我想知道是否有一些EF功能可以做到这一点。如果没有这种功能,我可以为MySQL数据库编写触发器吗?这不是一个坏方法吗?我的意思是将我的业务逻辑拆分为控制器和数据库?反之亦然,在数据库级别进行这种逻辑将是一个好习惯吗?