c# - 忽略在级联删除上删除特定实体

标签 c# entity-framework-core

我有以下实体:

public class ShoppingCartItem
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int ShoppingCartItemId { get; set; }
    public virtual Product Product { get; set; }    
    public int Quantity { get; set; }
    public string ShoppingCartId { get; set; }
    public DateTime ItemAddedToCart { get; set; } 
}

ProductShoppingCartItem 存在一对一的外键关系。 我的问题是,如何使 Entity Framework 核心跳过删除 Product 级联删除上的 ShoppingCartItem 实体?

最佳答案

您可以在构建器对象中使用如下内容

builder.Entity<ShoppingCartItem>()
    .HasOne(s => s.Product)
    .WithOne(p => p.ShoppingCartItem)
    .Metadata.DeleteBehavior = DeleteBehavior.Restrict;

关于c# - 忽略在级联删除上删除特定实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59408834/

相关文章:

c# - Code First 模型 - 可以生成数据库

.net-core - 如何为上下文禁用日志

c# - 带有EF Core Linq2Sql的聚合的聚合

c# - Entity Framework Core 5 : configuring many to many relationships, 如何指定外键名称

logging - ASP.NET Core 1.0 日志记录

c# - 解构 C# 元组

c# - Windows Phone 上的语音识别 - 语音到文本

javascript - 如何在 Asp.net MVC 中向外部 js 文件添加本地化?

c# - 为 HTTP 监听器设置 'Access-Control-Allow-Origin'

c# - 将 asp.net core 独立 Web 应用程序部署到 Ubuntu。 appsettings.json 中存在的数据库名称为空