Зависимое свойство в ReferentialConstraint отображается в столбец, созданный магазином. Колонка: «ID» - PullRequest
16 голосов
/ 10 июля 2011

Я не могу понять, почему я получаю эту ошибку, когда пытаюсь добавить объект Venue и вызываю SaveChanges (). Единственная разница в модели с объектами Venue заключается в том, что они имеют отношение от 1 до 1..0 к городу.

City city = ProcessCityCache(ev, country, db); // After this call, 'city' is already persisted.
venue = new Venue {
    TicketMasterURL = ev.VenueSeoLink,
    Name = Capitalize(ev.VenueName),
    City = city
};
db.Venues.AddObject(venue);
db.SaveChanges(); // Exception thrown here.

Любое понимание будет с благодарностью!

Model Diagram

(откройте изображение в отдельной вкладке / окне, чтобы увидеть его в полном размере)

Ответы [ 5 ]

29 голосов
/ 11 июля 2011

Я нашел проблему. Это я был виноват. Мои отношения FK_Venue_City были установлены как City.ID -> Venue.ID, где я хотел получить City.ID -> Venue.CityID. Я внес это изменение в свою базу данных, а затем обновил модель.

8 голосов
/ 25 мая 2012

ОК, добавив мой опыт с этим непонятным сообщением об ошибке:

У меня было то же исключение, и после сравнения базы данных с EDMX (что за утомительное задание !!) я обнаружил, что по ошибке я установил взаимно-однозначное отношение (иностранный был основным, а основной - иностранным) .

Как только я установил, что все работает гладко!

В любом случае - надеюсь, мои потерянные 3-4 часа кому-нибудь помогут! :)

5 голосов
/ 26 июня 2012

Я страдаю от подобной проблемы. В моем случае я неправильно установил отношение FK, а затем импортировал таблицу с неправильным FK в свою модель EF. Несмотря на исправление отношения FK с помощью мастера обновления в Visual Studio, мое исправление не было выполнено.

Чтобы решить эту проблему, я удалил таблицу из модели EF, а затем повторно импортировал ее с помощью мастера обновлений, который, наконец, обнаружил изменение. Я надеюсь, что это помогает кому-то еще!

0 голосов
/ 16 сентября 2016

Добавление двух моих битов.У меня была эта ошибка, и в конце концов я понял, что мои отношения между родителями и детьми поменялись местами.Как только я очистил эти отношения, они снова заработали.

0 голосов
/ 29 марта 2014

Мой случай также был неправильно настроенной ассоциацией. В частности, я установил отношения 1..1, когда мне нужно было 1..0,1

...