Entitiy Framework: обновление базы данных из модели вместо создания базы данных из модели

Я создал модель Entity Framework 4 с помощью Visual Studio 2010 и создал из нее базу данных. Теперь я обнаружил, что добавляю новые свойства (со значениями по умолчанию), меняю документацию столбцов, меняю имена столбцов, меняю типы столбцов несколько раз. Все задачи, которые не требуют особой «дополнительной работы», чтобы их нельзя было решить автоматически (по моему скромному мнению). Каждый раз, когда я делал «Сгенерировать базу данных из модели», я, конечно, терял данные таблицы.

Есть ли способ, так сказать, просто обновить архитектуру базы данных, не трогая данные таблицы? Может быть, с некоторым взаимодействием с пользователем, особенно при изменении типов и т. Д.? Или эта функция будет слишком сложной, чтобы ее можно было реализовать надежно?

Заранее спасибо! Привет, Дэвид


person David    schedule 16.06.2010    source источник
comment
Что вы видите: я просто меняю названия этих двух свойств. Они расположены в том же порядке, и их имена означают примерно одно и то же, но это лучше. Что видит Visual Studio: был объект с этими пятью свойствами, а теперь есть объект с этими пятью свойствами. Три из них одинаковые. Как вы ожидаете, что VS скажет, какие из них какие, или даже что они изменены, а не новые?   -  person Tomas Aschan    schedule 16.06.2010
comment
Просто предложение .... Я обычно создаю базу данных, а затем обновляю модель из базы данных. Причина этого в том, что я создаю базу данных под названием ApplicationModelDB, а другую - под названием ApplicationDB. В applicationModelDB нет данных, но я делаю здесь свои обновления. Как только я получаю Entity XML и DB так, как я хочу, я применяю свои сценарии DB к моей базе данных приложений. Это позволяет добиться двух вещей. Я могу отслеживать свой SQL, необходимый для создания / обновления базы данных или возврата к более старой версии. И это позволяет мне управлять странными причудами Entity Framework Designer.   -  person John Hartsock    schedule 16.06.2010
comment
Дубликат stackoverflow.com/questions/3144117/.   -  person Ashish Gupta    schedule 29.08.2010


Ответы (1)


Ноам Бен-Ами - MSFT1 (сотрудник Microsoft) ответил на мой вопрос на http://social.msdn.microsoft.com/Forums/en-us/adodotnetentityframework/thread/3adc080f-ee8c-4104-be29-95b2fb3fabe9 следующим образом:

Мы создали пакет мощности для базы данных конструктора сущностей, чтобы поддержать это. Вы можете скачать его здесь: http://visualstudiogallery.msdn.microsoft.com/en-us/df3541c3-d833-4b65-b942-989e7ec74c87

Он включает рабочий процесс создания базы данных для дизайнера, который выполняет миграцию, а не удаление / создание.

Эта публикация предоставляется КАК ЕСТЬ, без каких-либо гарантий и прав.

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

person David    schedule 22.06.2010