Проблема с фрагментами отображения EntityFramework - PullRequest
0 голосов
/ 11 октября 2019

Я работаю над веб-проектом API в ASP.net и по рекомендации нескольких пользователей stackoverflow с описанием моей проблемы я решил использовать EntityFramework.

Работа с базой данныхуже создан и сформирован со всеми связями. Я уже сгенерировал все соответствующие объекты и выполнил первый sql, чтобы получить небольшой пример ql, который будет возвращать все данные данной таблицы.

Но когда я получаю запрос и выполняю его, я получаюошибка 3002 со следующим описанием:

ошибка 3002: проблема в отображении фрагментов, начиная со строки 12441: потенциальное нарушение времени выполнения ключей таблицы таблицы propuestaMarca (propuestaMarca.marca, propuestaMarca.propuesta): столбцы (propuestaMarca. propuesta, propuestaMarca.marca) сопоставляются со свойствами EntitySet propuestaMarca (propuestaMarca.propuesta.cod_propuesta, propuestaMarca.marca.cod_marca) на концептуальной стороне, но они не образуют ключевые свойства EntitySet (propuestaMarca.marca.procata_tacata proptatata_tacata, propuestaMarca.propuesta.empresa).

Когда я рассматриваю модель .emdx, я вижу следующее:

enter image description here

Таблица propuestaMarca не существует в модели. Неправильно экспортируется

enter image description here

При просмотре модели .emdx я вижу следующее:

Предлагаемая таблица Бренд несуществуют в модели. Он неправильно экспортируется.

Я искал информацию об ошибке 3002 и обнаружил, что удаление определенного первичного ключа из одной из двух таблиц решает проблему, и попытался удалить первичный ключ Empleadoв таблице пропуеста, но это не сработало. enter image description here

1 Ответ

0 голосов
/ 11 октября 2019

Эта ошибка также может возникать, когда первичный ключ создается комбинацией более чем одного атрибута (составного ключа). Похоже, у вас есть два «ключа» в таблице пропуеста.

Из сообщения об ошибке выше:

( propuestaMarca.propuesta, propuestaMarca.marca ) -> 2 столбца

сопоставлены со свойствами EntuesSet propuestaMarca

( propuestaMarca.propuesta.cod_propuesta, propuestaMarca.marca.cod_marca ) -> 2 столбца

на концептуальной сторонено они не формируют ключевые свойства EntitySet

( propuestaMarca.marca.cod_marca, propuestaMarca.propuesta.cod_propuesta, propuestaMarca.propuesta.empresa ). -> 3 столбца

Так что я думаю, что вы должны проверить отображение.

...