2015-01-29 3 views
1

нового Entity Framework ....Исключения при обновлении EF дизайнера

настоящего время я использую последнее обновление для EF и Visual Studio 2012, при попытке обновить из базы данных для обновления таблицы в моей модели, которые изменились , дизайнер бросает COMException «Файл или папка с именем« XXXXModel.Context.tt »уже существует. Укажите уникальное имя для элемента, который мы добавляем.

Похоже, он хочет, чтобы я удалил все мои файлы модели при обновлении от БД, это не может быть прав. Я что-то упустил?

+0

Я смущен. Вы пытаетесь обновить базу данных или обновить свои модели? – Sefa

+0

ошибка возникает при обновлении модели после настроек в базе данных. – Gary

+0

Вот еще один связанный с этим вопрос, еще нет ответов: http://stackoverflow.com/questions/28153536/entity-framework-error-on-updating-model-from-database-and-vice-versa – NahuelGQ

ответ

1

Это происходит потому, что структура сущности создает вашу модель в автоматически сгенерированном файле container.designer.cs. Этот файл содержит классы, которые сопоставляются с вашими таблицами базы данных.

В связи с этим, не удаляйте модель, но только удалить .tt файлы

+0

Даже если у меня есть пользовательский шаблон? – Younes

0

Это случилось со мной тоже. Я обвинил генератор контекста Db, который не переопределял предыдущие классы POCO.

Как получить за это последовать ответ от @husonos, где:

  1. удалить * .TT файлы на вашем EDMX-файла в проекте
  2. Добавить новый «Код поколения Item» (щелкнув правой кнопкой мыши на EDMX зрения дизайна)
  3. выберите Db Generator (<> .tt)
  4. имя его, сохранить его

, и тогда вам все должно быть хорошо.

В некоторых случаях может появиться сообщение о переопределении существующего, я пошел на «да».

Смежные вопросы