У меня две таблицы.
Заказы и ордера
У ордеров есть свойство ID.
OrderLines имеет свойство ID и OrderID.
Таким образом, 1 порядок может иметь много строк заказа.
Когда я добавляю OrderLines в модель сущности, я устанавливаю “Entity Key = false” в поле “ID”.
Я установил “Entity Key = true” в поле “OrderID”.
Затем я добавляю новую ассоциацию.
OrderLines multipleicity = many и множественность ордеров = 1. Отсутствие свойства навигации и отсутствие свойств внешнего ключа.
Ссылочное ограничение..
Principal OrderLines OrderID – Идентификатор зависимого заказа.
Хит сохранить, а затем я получу “Множественность недействительна в роли” OrderLines “… Допустимые значения для множественности для главной роли -” 0..1 “или 1”.
Если я изменю его с 1 на “0..1”, тогда я получу ту же ошибку.
Ну, я должен был сделать следующее, чтобы заставить его работать правильно.
- Убедитесь, что оба идентификатора в ордерах и идентификатор в OrderLines имеют “StoreGeneratedPattern = Identity”
- Убедитесь, что OrderID в OrderLines имеет “Entity Key = False”
- Создайте 1-ко-многим, где 1 находится в ордере, а многие находятся в OrderLines
Этот сайт немного полезен для тех, кто пытается понять отношения Entity Framework.
http://weblogs.asp.net/ricardoperes/entity-framework-code-first-relations