Entity Framework - «Проблема в отображении фрагментов» - ошибка. Помогите мне понять объяснения этой ошибки - PullRequest
46 голосов
/ 19 июня 2009

Ошибка 3007: проблема в отображении фрагментов, начинающихся со строк 186, 205. Столбцы с не-первичным ключом [WheelID] сопоставляются в обоих фрагментах с различными концептуальными свойствами стороны - возможно несоответствие данных, поскольку соответствующая концептуальная сторона свойства могут быть независимо изменены.

Я нашел несколько мест в сети, описывающих эту ошибку, но я просто не понимаю их. (смутный смайлик идет сюда)

Один
Два
Три
Четыре

Здесь есть что-то довольно фундаментальное, я, должно быть, скучаю. Можете ли вы объяснить это, чтобы я понял это? Может быть, используя мой пример из реальной жизни ниже?

alt text

Внешний ключ 1: N Wheels.Id -> Slices.WheelId

Я добавляю их в каркас сущностей, а WheelId не отображается в сущности Slices.

alt text

Выполнение некоторого обходного пути (удаление отношения из базы данных перед добавлением таблиц в EF - затем повторное создание и обновление EF) Мне удалось заставить WheelId оставаться в слайсах, но затем я получил ошибку, упомянутую вверху.

Ответы [ 11 ]

0 голосов
/ 07 марта 2013

Для запросов LinQ to Entities в EF1 мой обходной путь отсутствия доступа к внешнему ключу как свойству заключается в следующем коде, который не создает запрос на присоединение к связанной таблице:

dbContext.Table1s.FirstOrDefault(c => (int?)c.Table2.Id == null)

т. Е. Сгенерированный SQL:

...WHERE ([Extent1].[Table2Id] IS NULL)...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...