2015-11-18 3 views
0

Мы используем миграции Entity Framework в проекте. До сих пор мы добавили несколько миграций без проблем, но перестали работать. Теперь, когда мы пытаемся добавить миграцию, EF показывает ошибку со следующим сообщением:Entity Framework не создает новую миграцию: имя базы данных недопустимо

Недопустимое имя базы данных «my-table-name». Имена базы данных должны иметь вид [имя_схемы.] Имя_объекта.

Кроме того, если мы выполним команду update-database, EF сообщает нам, что модель не соответствует базе данных. Но модель не была изменена (мы хотим создать «пустую» миграцию).

Мы попытались вернуться к предыдущей миграции, начать с нуля, но мы всегда получаем тот же результат. Как ни странно, иногда неверная таблица меняется. Мы не думаем, что это связано с проблемами плюрализации в конфигурации контекста.

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

  • Entity Framework-версия: 6.1.3-40302
  • База данных: SQL Server 11.0.5058.0
+0

Были ли добавлены новые модели к модели? –

+0

Нет, это вещь. EF не должен запрашивать дальнейшую миграцию. – Julen

ответ

2

Наконец решение было довольно прямо вперед, просто запустите команду Add-Migration вместе с параметром IgnoreChanges ,

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

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

Спасибо всем за помощь!