C# 实体框架,没有引用完整性的M:M关系

C# 实体框架,没有引用完整性的M:M关系,c#,entity-framework,C#,Entity Framework,我想做的是,我有两个表,可以链接到多对多,但两边的对象可能还不存在。虽然这让我一想到它就感到寒意,但这是我工作所必需的 我以前从未在实体框架代码中这样做过,我在创建多对多关系方面没有问题,但只有当双方都存在时,所以我不能100%肯定这是可能的,但希望有人能够确定我如何实现这一点。只要双方的实体都是可选的,可以使用第三个实体执行此操作: public class Entity1 { public int Id { get; set; } } public class Entity2 {

我想做的是,我有两个表,可以链接到多对多,但两边的对象可能还不存在。虽然这让我一想到它就感到寒意,但这是我工作所必需的


我以前从未在实体框架代码中这样做过,我在创建多对多关系方面没有问题,但只有当双方都存在时,所以我不能100%肯定这是可能的,但希望有人能够确定我如何实现这一点。

只要双方的实体都是可选的,可以使用第三个实体执行此操作:

public class Entity1
{
    public int Id { get; set; }
}

public class Entity2
{
    public int Id { get; set; }
}

public class Many2ManyRelationEntity
{
    public int Id { get; set; }
    public int? Entity1Id { get; set; }
    public int? Entity2Id { get; set; }
}

它们可以是可选的,但如果指定了它们,则它们必须存在。数据库级别的引用完整性将帮助您。我正在寻找一种允许对象不存在的解决方案。我首先搜索了如何不通过实体框架代码强制引用完整性,但没有找到任何解决方案。@Satal:请通过示例澄清这个问题。现在看来,你自相矛盾。