首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除外键数据时删除外键数据

删除外键数据时删除外键数据
EN

Stack Overflow用户
提问于 2016-07-06 20:31:31
回答 3查看 1.4K关注 0票数 1

我有两个数据库表,当我删除外键指向的表中的一个数据(主键在那里)时,指向该数据的外键也被删除。

代码语言:javascript
复制
    [HttpPost, ActionName("Delete")]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> DeleteConfirmed(int id)
    {

        Report report = await db.Reports
            .Include(i => i.RepFilters)
            .Where(i => i.ID == id).SingleAsync();

        db.Reports.Remove(report);

        await db.SaveChangesAsync();
        return RedirectToAction("Index");
    }

外键不可空。

(我所犯的错误)

怎么做/修复?(帮我做正确的标题)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-07-08 12:29:49

当.Net或EF为您的上下文生成代码时,可以将

代码语言:javascript
复制
.WillCascadeOnDelete()

被设置为false,所以只需将其更改为true并尝试它是否有效。

票数 1
EN

Stack Overflow用户

发布于 2016-07-07 14:00:44

如果您不希望通过SQL服务器执行此操作,则必须加载db context中的所有子对象并删除它们。

票数 2
EN

Stack Overflow用户

发布于 2016-07-08 12:35:53

您的外键应配置为删除级联更新级联。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38233246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档