C# 实体框架5:保存具有多个父关系的新子实体时出错

C# 实体框架5:保存具有多个父关系的新子实体时出错,c#,asp.net-mvc-4,entity-framework-5,C#,Asp.net Mvc 4,Entity Framework 5,对于工作中的项目,我创建了类似于以下内容的实体: public class ObjectA { public Guid ObjectAGUID { get; set; } // key public string Name { get; set; } public int Number { get; set; } } public class ObjectB { public Guid ObjectBGUID { get; set; } //key pu

对于工作中的项目,我创建了类似于以下内容的实体:

public class ObjectA
{
    public Guid ObjectAGUID { get; set; } // key
    public string Name { get; set; }
    public int Number { get; set; }
}

public class ObjectB
{
    public Guid ObjectBGUID { get; set; } //key
    public string Name { get; set; }
    public int Number { get; set; }
}

public class Note
{
    public Guid NoteGUID { get; set; } // key
    public Guid AssociationGUID { get; set; }
    public string Text { get; set; }
    public string NoteType { get; set; }
} 
ObjectA和ObjectB都与Notes具有1-Many关系,其中Note.AssociatedGUID是a和B各自实体键的从属属性。换句话说,A和B可以有任意数量的注释实体与其中任何一个相关联

我的问题:

当我在Note.AssociatedGUID=ObjectA.ObjectAGUID的位置创建新的ObjectA和新便笺时,我在DBContext.SaveChanges()上遇到以下错误:

沉思

如果我想为ObjectA和ObjectB创建注释,我是否需要创建单独的注释实体,比如说NoteA和NoteB来实现这一点?如果是这样,这似乎是多余的

或者,我是否需要为每个父实体单独设置一个可为空的外键?虽然更容易管理,但这似乎也有点过分

public class Note
{
    public System.Guid NoteGUID { get; set; }
    public System.Guid? ObjectAGUID { get; set; }
    public System.Guid? ObjectBGUID { get; set; }
    public string Text { get; set; }
    public string NoteType { get; set; }
}
帮忙

public class Note
{
    public System.Guid NoteGUID { get; set; }
    public System.Guid? ObjectAGUID { get; set; }
    public System.Guid? ObjectBGUID { get; set; }
    public string Text { get; set; }
    public string NoteType { get; set; }
}