Я использую MVC 5 с Entity Framework 6, автоматические миграции отключены, ни одно семя не используется, и я записываю свои обновления в производство.Entity Framework 6 просто удалил мою базу данных?
Я задержу руки и скажу, что я довольно новичок в MVC и EF.
Я просто загрузил новую базу кода в производство и забыл, что модель была изменена. Когда я пошел на вход в новую версию, он бросил страницу с ошибкой. Хорошо, я забыл сценарий последней миграции - я сделал это, подключился к SSMS и обнаружил, что база данных пропала.
Небольшая паника, восстанавливаемая из резервной копии (я не такая глупая!) И применяю миграцию, и все начинает работать так, как должно.
Почему мой код удалил всю базу данных при изменении модели? Как сказано, автоматические миграции отключены, и это поведение не происходит на машинах разработки, они вызывают ошибку об измененной модели.
Редактировать добавить: В то время, глядя на узорах инициализации в ответе Фернандов, ни один из них не говорят «Отбросьте базу данных, а затем ничего не делать». Моя база данных была удалена, MDF и LDF ушли, ничто не является SSMS, и ничто не воссоздается на своем месте. Если бы вместо него была создана пустая база данных, я бы понял немного больше. Тем не менее, учетная запись пользователя имела DBO в базе данных, но не master, поэтому была бы возможность удалить базу данных, но не создать новую?
Я не знаю ответа, но всегда стараюсь, чтобы я поставил 'Database.SetInitializer (null);' в 'OnModelCreating()' моего контекстного класса. –
Кажется разумным. Я считаю, что мое удивление заключается в том, что это не происходит ни в одной из сред Dev. – RemarkLima