小编Jim*_*haw的帖子

在EF 4.2中使用TPT(每种类型的表)和删除父对象的问题

根据我对几个帖子的理解,使用共享主键时,使用EF的TPT架构不会创建必要的ON DELETE CASCADE ....还有人说,EF上下文将处理删除子的正确顺序-classed表(但我得到一个错误,它打破了约束,我可以通过在子类表上添加ON DELETE CASCADE来修复它)...

更多背景信息......

我有一个Section类,它有一个数字,标题和一个页面列表.该页面使用一个包含基本页面属性的超类来设计.我有大约10个以上的页面类子类.Section类包含这些页面的ICollection.除了在子类表上没有ON DELETE CASCADE之外,DB正确创建.

我的代码将创建实体并添加到数据库中.但是,如果我尝试删除一个部分(或所有部分),由于我的子类页面表上的FK约束,它无法删除...

public abstract BaseContent 
{
... common properties which are Ignored in the DB ...
}

public class Course : BaseContent
{
    public int Id {get;set;}
    public string Name {get;set;}
    public string Descripiton {get;set;}
    public virtual ICollection<Chapter> Chapters{get;set;}
    ...
}

public class Chapter : BaseContent
{
    public int Id {get;set;}
    public int Number {get;set;}
    public string Title {get;set;}
    public virtual Course MyCourse{get;set;}
    public virtual ICollection<Section> Sections{get;set;}
    ...
}

public class …
Run Code Online (Sandbox Code Playgroud)

entity-framework

10
推荐指数
1
解决办法
1959
查看次数

标签 统计

entity-framework ×1