#visual-studio-2010 #entity-framework #db2
#visual-studio-2010 #entity-framework #db2
Вопрос:
Я пытаюсь отразить новые изменения или добавить новую таблицу в мою модель в файле EDMX, используя «Обновить модель из базы данных». Затем я получаю это сообщение об ошибке в мастере обновления, в котором говорится «Ошибка при получении информации базы данных. Элемент с тем же ключом уже добавлен.»
Я использую базу данных DB2 и VS 2010.
Пожалуйста, дайте мне знать, как я могу добавить новую таблицу или отразить изменения в моей модели с изменениями, внесенными в базу данных. Прямо сейчас я удаляю всю модель и воссоздаю новую.
Приветствуется любая помощь.
Ответ №1:
Я получал ту же ошибку. В моем случае с DB2 9.5 LUW решением было удалить дублирующиеся именованные хранимые процедуры на сервере. DB2 позволяет вам иметь несколько сохраненных процедур с одинаковым именем, но разными определениями (т. Е. Разными параметрами). Но, по-видимому, это несовместимо с Entity Framework. К счастью для меня, дубликаты были фактически неиспользуемыми старыми версиями.
Альтернативой является редактирование вашего EDM-файла в режиме редактора XML.
Ответ №2:
Я следовал решению, предоставленному vikrantislav. И в дополнение к этому я внес еще одно изменение. По умолчанию EF tool извлекает объекты из всех завершающих схем. Поэтому убедитесь, что у вас нет повторяющихся процедур хранения ни в одной из этих схем, или измените свойства подключения для фильтрации по определенной схеме. В моем случае я отфильтровал по определенной схеме, поскольку я не хочу путаться с чужими процедурами хранения в других схемах. И теперь начал работать мастер «обновить модель из базы данных». какое облегчение.
Комментарии:
1. Не могли бы вы, пожалуйста, объяснить человеку, который голосовал против, в чем заключалась проблема, с которой вы столкнулись, когда мой ответ / решение не помогло ее решить?