EF4 обновление с 3.5, как добавить поля внешнего ключа в модель - PullRequest
1 голос
/ 14 марта 2011

Я обновил свой проект с FW 3.5 до 4.0.Я пытался получить столбцы внешнего ключа для модели, и, очевидно, VS не делает этого по команде «обновление из базы данных».поэтому мы добавили к сущности столбец целых чисел и сопоставили его с полем внешнего ключа.Когда я компилирую, я получаю классическую ошибку EF "ошибка 3007. Проблема при отображении фрагментов, начинающихся со строк Столбцы в обоих фрагментах отображаются в разные концептуальные свойства сторон" Мне было интересно, нужно ли мнечто-то особенное (даже если мне нужно вручную отредактировать xml в файле edmx), чтобы получить доступ к значениям внешнего ключа вместо загрузки объекта навигации по-старому.У меня сложилось впечатление, что EF4 изначально предоставляет свойства внешнего ключа вместе со свойствами навигации.Может быть, я не прав или MS просто блефует :).Кстати, я вижу эти свойства для вновь добавленных объектов.Воссоздание модели с нуля не является вариантом, поскольку приложение уже находится в производстве.

Любая помощь приветствуется.Спасибо

1 Ответ

2 голосов
/ 14 марта 2011

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

...