2010-05-30 83 views
2

不EF 4支持单向一个一对多的关联,如:实体框架4中的单向一对多关联?

public class Parent 
{ 
    public int Id { get; set; } 
    public string Something { get; set; } 
    public List<Child> AllMyChildren { get; set; } 
} 

public class Child 
{ 
    public int Id { get; set; } 
    public string Anotherthing { get; set; } 
    // I don't want a back-reference to the Parent! 
    // public int ParentId { get; set; } 
} 

当我尝试编译我的项目,父母和孩子之间的关联,其中END2导航是空白(因为我未选中的END2导航添加关联对话框中的属性复选框),我得到

错误2027:没有为以下EntitySet/AssociationSet - Child指定映射。

UPDATE:

如果我只是对家长,而不是一个列表的列表或类似性质是什么?我是否需要创建一个包装类型来保存字符串,以便我还可以对Parent进行反向引用?

+0

为什么你会不想一回参考?为什么这会打扰你? *是EF的默认行为,我不认为你可以关闭它 - 一个关联总是双向的街道 – 2010-05-30 07:27:09

+0

@marc_s:孩子永远不需要引用它的父母,永远不会从一个家长到另一个。从业务对象的角度来看,不需要引用或关心父项。如果我添加一个对父对象的引用,它只是为了满足持久性机制的要求。实际上,在我必须将其更改为类以满足EF之前,Child是一个具有几个简单属性的结构。 – 2010-05-30 07:31:29

+0

@Eric J:好吧,从纯粹的角度来看,我明白你对此的看法。但为什么要这样做 - 只是务实,接受你的框架的工作方式和工作方式 - 而不是反对它。你会为自己节省很多的痛苦。 – 2010-05-30 07:50:20

回答