2011-02-16 135 views
4

假設我從EF中的空白畫布構​​建模型,並且在模型(Category-> Product或某物)中有一對多關係。我怎樣才能使該集合(Category.Products)成爲一個Set(HashSet或類似的)而不是集合,以便我可以在模型級別強制設置約束(如唯一性)?如何將實體的集合設置爲實體框架?

+0

您是使用實體對象還是POCO?你如何生成你的實體? – 2011-02-16 09:00:35

回答

2

我最近已經轉向使用POCO和Linq-To-Sql,並且非常喜歡它給予的自由,而不必使用EntitySet等。所以我認爲POCO是你的答案,但我懷疑(沒有研究過,所以不能明確地回答)你的協會和框架(EF或L2S)仍然可以使用什麼類型的限制能夠使用它們。例如,你可能不得不使用來自IList的東西,或其他什麼。

我在看一些模糊不清的東西,發現EntitySet的一個特性是訂閱Add和Remove事件的能力。有一個ObservableCollection類型,它也有類似的功能,所以你可以看看那些。否則,你很可能會停滯不前。

+0

我會研究它,謝謝。我沒有將這個答案標記爲「接受」的唯一原因是因爲我仍然不確定我是否可以爲POCO協會使用任何類型的收集。我會研究它並回到這個。 – 2011-03-03 19:54:32