Проверка первой модели EF Code на соответствие существующей базе данных

Есть ли способ проверить, соответствует ли DbContext базе данных, когда база данных не была создана сначала кодом EF?

Я ищу функциональность, аналогичную Database.CompatibleWithModel, но нет метаданных.


person Josh    schedule 17.01.2012    source источник


Ответы (2)


В настоящее время в EF нет возможности сделать это; однако вы можете использовать сценарий DDL в качестве отправной точки для проверки существования всех артефактов в базе данных. Чтобы получить этот скрипт, используйте

string ddlScript = ((IObjectContextAdapter)myContext).ObjectContext.CreateDatabaseScript();

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

person bricelam    schedule 17.01.2012

Пробовали ли вы использовать Entity Framework Power Tools.

вы можете использовать инструменты для обратного проектирования Code First — генерирует классы POCO, производные DbContext и сопоставление Code First для существующей базы данных.

И тогда, может быть, вы сможете сравнить информацию, полученную путем обратного проектирования, с тем, что у вас уже есть.

person Ibrahim Najjar    schedule 04.03.2013