Apple核心数据中的EF关系与双向关系

时间:2015-09-19 16:47:48

标签: ios .net entity-framework core-data orm

我有应用程序的数据库规范,它是之前为iOS创建的,并且使用Apple Core Data作为ORM,因此表之间的所有关系都是双向的。

我是否需要在实体框架中执行相同的操作(双向关系,在大多数情况下无法实现),或者我可以只使用典型(一对一,多对一,多对多)许多)关系,它们的工作方式与Apple Core Data中的双向关系相同吗?

1 个答案:

答案 0 :(得分:0)

你在推理中犯了一个错误。您将数据库配置与ORM配置混淆。当父表和子表之间存在一对多关系时,子表将保存父表的外键。父表将没有任何与子表相关的字段。

使用Code First定义此关系时,您可以自由地将其实现为:

Public Class Parent
    Public Property Id as Integer
    Public Overridable Property Children as ICollection(Of Child)
End Class

Public Class Child
   Public Property Id as Integer
   Public Property ParentId as Integer
   Public Overridable Property Parent as Parent
End Class

或者

Public Class Parent
    Public Property Id as Integer
End Class

Public Class Child
   Public Property Id as Integer
   Public Property ParentId as Integer
   Public Overridable Property Parent as Parent
End Class

或者

Public Class Parent
    Public Property Id as Integer
    Public Overridable Property Children as ICollection(Of Child)
End Class

Public Class Child
   Public Property Id as Integer
   Public Property ParentId as Integer
End Class