gpt4 book ai didi

data-annotations - 等效于 .WillCascadeOnDelete(false) 的 Entity Framework 数据注释;

转载 作者:行者123 更新时间:2023-12-04 07:22:40 26 4
gpt4 key购买 nike

我目前正在使用启用了迁移的 EF Code First 4.3,但禁用了自动迁移。

我的问题很简单,是否有等效于模型配置的数据注释 .WillCascadeOnDelete(false)

我想装饰我的类(class),以便外键关系不会触发级联删除。

代码示例:

public class Container
{
public int ContainerID { get; set; }
public string Name { get; set; }

public virtual ICollection<Output> Outputs { get; set; }
}

public class Output
{
public int ContainerID { get; set; }
public virtual Container Container { get; set; }

public int OutputTypeID { get; set; }
public virtual OutputType OutputType { get; set; }

public int Quantity { get; set; }
}

public class OutputType
{
public int OutputTypeID { get; set; }
public string Name { get; set; }
}

我想做这样的事情:
public class Output
{
[CascadeOnDelete(false)]
public int ContainerID { get; set; }
public virtual Container Container { get; set; }

[CascadeOnDelete(false)]
public int OutputTypeID { get; set; }
public virtual OutputType OutputType { get; set; }

public int Quantity { get; set; }
}

这样我就可以正确地搭建迁移的脚手架。其脚手架目前要级联删除的外键关系。

除了使用模型配置之外,还有其他想法吗?

最佳答案

不,没有这样的等价物。您必须使用 fluent API 有选择地删除级联删除或必须删除 OneToManyCascadeDelete约定在全局范围内删除它。

关于data-annotations - 等效于 .WillCascadeOnDelete(false) 的 Entity Framework 数据注释;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10016347/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com