У меня была эта проблема в случае, когда я создавал ассоциации «многие со значениями от 0 до 1» и от «0,1 до от 0 до 1». Одна сущность нуждалась в связях с несколькими таблицами, и у этой сущности не было внешних ключей, определенных для этих таблиц.
Мне пришлось сделать шаг отображения таблиц, который приведен в принятом ответе, но учтите, что это было не только для многих, но и для многих ассоциаций; он применяется ко всем типам ассоциаций, которые я добавил для этой сущности.
В представлении Сведения о сопоставлении мне нужно было выбрать сущность со столбцами идентификатора внешнего ключа для различных таблиц. Это не всегда "много" сторона отношений. Только я смог сопоставить свойство связанной сущности с соответствующим свойством в исходной сущности. Выбор объекта «назначение» не позволил бы мне выбрать нужные мне свойства, и ошибка все равно будет существовать.
Короче говоря, мне пришлось сопоставить с помощью таблицы, относящейся к сущности, у которой были поля идентификатора «не внешнего ключа», соответствующие первичным ключам различных сущностей (и их таблиц), которые мне нужно было связать.
Сущность A
различные другие свойства ...
и т.д.
Контактное лицо
- Id
- 1028 * FirstName *
- LastName
и т.д.
В деталях сопоставления я выбрал таблицу Entity A . Затем он показал оба конца ассоциации. Я сопоставил свойство Id объекта A с столбцом фактического идентификатора его таблицы (у них были разные имена). Затем я сопоставил поле Id объекта Contact с полем ContactId объекта A.