Во-первых, отказ от ответственности, у меня нет большого опыта работы с EF, и я бы предположил, что в этом отношении он похож на nHibernate.Я ответил на аналогичный вопрос здесь .Суть в том, что EF и NHibernate - это просто рамки ORM.Они имеют глубокие знания вашего домена, но только в его текущем состоянии, они не знают истории.ORM может генерировать схему базы данных, но эта функция полезна только для первоначального развертывания и тестирования интеграции.Вы не можете полагаться на него в производственном приложении, которое развивается и нуждается в обновлении (как для схемы, так и для данных).
По моему опыту, нет волшебного инструмента, который будет писать сценарии обновления, они должны быть написаны вручную или, по крайней мере, проверены разработчиком.Инструменты могут предоставить вам среду для выполнения этих сценариев, например RoundhouseE .У Скотта Аллена есть превосходная серия о подходе «только вперед, один раз».