Сначала я использую код EF 4, и у меня здесь чертовски много времени. Я получаю сообщение об ошибке:
{"Introducing FOREIGN KEY constraint 'SalesRepresentative_SalesOrders' on table 'SalesOrders' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint. See previous errors."}
Рассмотрим следующий код. Если я закомментирую поля идентификатора внешнего ключа, он создаст свое собственное и будет работать, но если я этого не сделаю, я получу ошибку.
Public Class SalesOrder
Inherits EntityBase(Of SalesOrder)
#Region "Members/Properties"
Public Property ID As Integer
'Public Property CustomerID As Integer
'Public Property CustomerLocationID As Integer
'Public Property SalesRepresentativeID As Integer
'Public Property SalesOrderStatusID As Integer
Public Overridable Property Customer As Customer
Public Overridable Property CustomerLocation As CustomerLocation
Public Overridable Property Items As ICollection(Of SalesOrderItem)
Public Overridable Property Status As SalesOrderStatus
Public Overridable Property SalesRepresentative As SalesRepresentative
#End Region
End Class
Public Class SalesRepresentative
Inherits EntityBase(Of SalesRepresentative)
#Region "Members/Properties"
Public Property ID As Integer
Public Property FirstName As String
Public Property LastName As String
Public Overridable Property Customers As ICollection(Of Customer)
Public Overridable Property SalesOrders As ICollection(Of SalesOrder)
#End Region
End Class
Так что мне интересно несколько вещей:
Должен ли я создать внешний ключ
собственность и навигация
имущество? Я просто создаю
навигационное свойство на ребенка
объект? Я просто создаю
свойство навигации у родителя
объект
У кого-нибудь есть идеи? Спасибо !!