删除实体框架核心中实体之间的关系

本文关键字:实体 关系 之间 核心 框架 删除 | 更新日期: 2023-09-27 18:02:51

例如,我有这样一个简单的模型:

var address = _dbContext.Addresses.Add(new Address()
{
    AddressId = Guid.NewGuid().ToString(),
    StreetName = "Test street name"
}).Entity;
_dbContext.Libraries.Add(new Library()
{
    LibraryId = Guid.NewGuid().ToString(),
    Name = "Test library",
    Address = address
});

然而,我怎样才能打破他们之间的关系呢?如果我只是想在数据库中保留测试库和测试地址,但破坏它们之间的关系,我想测试库的外键必须为空。我怎样才能做到这一点呢?

删除实体框架核心中实体之间的关系

您的entity-model必须在外键列上为空。

public class Library
{
    ...
    public Guid? AddressId{get;set;}
    public virtual Address Address {get;set;}
}

则可以将address设置为null。否则就不可能了