EntityTypeBuilder <T>中的OnDelete ASP.NET Core 2实体框架

马修·弗林

我使用以下模型构建器在数据库上设置我的关系。

在我的数据上下文中,我有:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.HasDefaultSchema(schema: DbGlobals.SchemaName);

    modelBuilder.AddConfiguration<Address>(new AddressConfiguration());
    /*reduced for brevity*/

    base.OnModelCreating(modelBuilder);
}

在哪里AddressConfiguration()我有以下内容;

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;

namespace Data.EF.Configuration
{
    internal class AddressConfiguration : DbEntityConfiguration<Address>
    {
        public override void Configure(EntityTypeBuilder<Address> entity)
        {
            entity.HasKey(x => x.Id);
            entity.Property(x => x.Latitude).HasColumnType($"decimal(9,6)").IsRequired();
            entity.Property(x => x.Longitude).HasColumnType($"decimal(9,6)").IsRequired();
            //I have tried the following but it says doesnt exist
            //entity.OnDelete(DeleteBehavior.Cascade);
        }
    }
}

现在我的地址模型有一个List<Contact> Contacts { get; set; }如何配置模型。在删除地址时删除级联?

我找到以下链接;

在EF Core中删除级联

哪一个详细说明了一种OnDelete方法,但是似乎没有EntityTypeBuilder<T>

有人可以告诉我我在做什么错吗?

用户名

OnDelete 指定在删除主体或切断关系后,如何配置删除操作以应用于删除关系中的从属实体。

它可用于ReferenceCollectionBuilder| ReferenceReferenceBuilder对象。这里阅读

您应该将关系定义为

    entity
        .HasMany(a => a.Contacts)
        .WithOne(c => c.Address)
        .OnDelete(DeleteBehavior.Cascade);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

EntityTypeBuilder在EF Core中不包含ToTable的定义

更新ASP.NET Core实体框架中的实体类

具有完整框架的ASP NET Core 2

带GroupBy ID的ASP NET CORE实体框架选择

找不到ASP.NET Core 2 MySQL 8.0.8-dmr实体框架扩展

ASP .NET Core实体框架的范围

使用实体框架和ASP.NET Core 2无法查询图像表

使用Identity Core的ASP.NET MVC框架中的身份

如何软删除asp.net core 2中具有集合的实体中的记录?

具有实体框架的ASP.NET Core 2,在应用程序配置文件中找不到名为“ ####”的连接字符串

使用ASP.NET Core中的联接查询在实体框架中获取用户角色

没有实体框架的情况下如何连接到ASP.NET Core中的数据库?

如何从ASP.NET Core中的实体框架中的数据库更新VS 2019中的模型

InvalidOperationException:序列不包含任何元素。在带有实体框架的Asp.net Core MVC中

带有实体框架的ASP.NET Core MVC中的索引方法不接受参数

ASP.net中的实体框架

实体框架.NET Core问题

实体框架:更新记录,包括在Net Core 3中

具有Identity和ASP.NET Core RC2的实体框架Core无法在数据库中创建用户

在ASP.NET Core MVC中创建实体列表

T-sql转asp.net实体框架

ASP.NET Core 实体框架 SQL 查询 SELECT

实体框架中的 System.NotSupportedException (ASP.NET MVC)

在asp net core实体框架mvc中从数据库绑定菜单和子菜单

ASP.NET Web API 2 CRUD 操作与实体框架

在 ASP .Net Core MVC 2.1 模型中访问 List<T>

Asp net - 使用 OnDelete() 从数据库中删除记录

ASP.Net Core - 实体框架 - 调用没有返回数据的存储过程(在 void 方法中)

ASP.NET Core Blazor 服务器中的实体框架上下文生命周期