2010-05-30 79 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

回答