首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Code-First Entity-Framework(5.0版)中发生级联删除

在Code-First Entity-Framework(5.0版)中发生级联删除
EN

Stack Overflow用户
提问于 2014-03-06 22:27:35
回答 1查看 75关注 0票数 0

我上了以下两节课

第一类:

代码语言:javascript
复制
[Table("players")]
public class Player
{
    [Key, Column("id"), DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }
    <summary>
    /// Video Location w.r.t. Current Screen (Top)
    /// </summary>
    [Column("top")]
    public double Top { get; set; }
    /// <summary>
    /// Video Location w.r.t. Current Screen (Width)
    /// </summary>
    [Column("width")]
    public double Width { get; set; }
    /// <summary>
    /// Video Location w.r.t. Current Screen (Height)
    /// </summary>
    [Column("height")]
    public double Height { get; set; }




    [Column("group_id")]
    public int group_id { get; set; }

    [ForeignKey("group_id")]
    public Group Group { get; set; }
} 

我的另一个班级是2班:

代码语言:javascript
复制
    [Table("groups")]
    public class Group
    {
         [Key, Column("id"), DatabaseGenerated(DatabaseGeneratedOption.Identity)]
          public int Id { get; set; }

           [Column("guid")]
           public string Guid { get; set; }

           [Column("is_deleted")]
           public bool IsDeleted { get; set; }

           [Column("name")]
            public string Name { get; set; }

   }

我在从数据库中删除组条目时遇到问题。每当我删除任何组时,属于该组的所有球员都会自动删除。我在Entity-Framework(5.0)中使用代码优先。任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2014-03-07 05:39:25

您需要明确地映射该场景。你可以这样做:

代码语言:javascript
复制
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {            
        modelBuilder.Entity<Player>().HasOptional(x => x.Group).WithMany().WillCascadeOnDelete(false);
    }

这将使播放器上的组成为可选的,这意味着它可以在没有引用组的情况下存在,并且还将指示您的上下文不要进行级联删除。

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

https://stackoverflow.com/questions/22227368

复制
相关文章

相似问题

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