C# 如何自动定义导航属性?

C# 如何自动定义导航属性?,c#,entity-framework,entity-framework-6,C#,Entity Framework,Entity Framework 6,让这两个班, 父类 class Parent{ [Key] public int Id { get; set; } public virtual ICollection<Child> child { get; set; } } 我想设置一个新的子类,如下所示: var child = new Child(); MyParentInstacnce.child.Add(child) 但是,当我设置父类状态时 db.Entry(child).State =

让这两个班,

父类

class Parent{

    [Key]
    public int Id { get; set; }

    public virtual ICollection<Child> child { get; set; }
 }
我想设置一个新的子类,如下所示:

var child = new Child();
MyParentInstacnce.child.Add(child)
但是,当我设置父类状态时

db.Entry(child).State = System.Data.Entity.EntityState.Added;
db.Entry(MyParentInstacnce).State = System.Data.Entity.EntityState.Modified;
我得到了休闲错误:

其他信息:发生引用完整性约束冲突:关系一端的“Parent_Id”属性值与另一端的“Parent.Id”属性值不匹配

通过手动将
child.Parent\u Id
的值设置为当前父Id,可以解决此问题

我想知道EntityFramework是否可以通过执行
MyParentInstacnce.child.Add(child)

如何配置实体框架以自动定义导航属性

OBS


Entify Framework能够做到这一点。您只需不创建导航属性即可。然后导航将在引擎盖下,EF将完成所有工作。但是,在这种情况下,我真的需要能够自动读取导航属性。

?!你是说神奇的?试试
fluent api
是的,“神奇地”是相当夸张的。Entify Framework能够做到这一点。您只需不创建导航属性即可。然后导航将在引擎盖下,EF将完成所有工作。但是在这种情况下,我真的需要能够读取导航属性。这是什么版本的EF?我不能用EF6重新编程。顺便说一下,参考asp.net是不相关的。自动的?!你是说神奇的?试试
fluent api
是的,“神奇地”是相当夸张的。Entify Framework能够做到这一点。您只需不创建导航属性即可。然后导航将在引擎盖下,EF将完成所有工作。但是在这种情况下,我真的需要能够读取导航属性。这是什么版本的EF?我不能用EF6重新编程。顺便说一下,参考asp.net是不相关的。
db.Entry(child).State = System.Data.Entity.EntityState.Added;
db.Entry(MyParentInstacnce).State = System.Data.Entity.EntityState.Modified;