Как понизить структуру Entity с 6 до 5?

Я создаю проект Asp.Net MVC с использованием VS2013 и добавил hottowel (2.0.1) с помощью nuget. Тем не менее, ветер не работает с Entity Framework 6.

Как перенести Entity Framework 6 созданного проекта на EF5?

Ответ 1

в консоли пакета nuget для вашего проекта (выберите его в раскрывающемся списке):

Uninstall-package EntityFramework
Install-Package EntityFramework -version 5.0.0

Ответ 2

Entity Framework также перемещает таблицу __MigrationHistory из системных таблиц в таблицы пользователей. Когда я попытался запустить свое приложение после отката, он не сработает, поэтому мне пришлось переместить __MigrationHistory обратно в системные таблицы:

EXEC sys.sp_MS_marksystemobject __MigrationHistory;

Когда я обновился до EntityFramework 6, мне пришлось добавить пустую миграцию (к сожалению, я не помню причину, но, я думаю, она жаловалась на обновление базы данных или подобное). Мне также пришлось удалить эту пустую миграцию. Поскольку это была совершенно пустая миграция, я думаю, это безопасно, я не знаю о миграции, которые фактически изменяют базу данных. Однако при запуске программы они могут не жаловаться.

delete from dbo.__MigrationHistory where MigrationId = 'myEmptyMigration';

Затем я удалил пустой файл миграции из моего проекта, который разрешил мои проблемы.

Ответ 3

Пакеты Breeze с надписью "(устаревшие)" предназначены для использования с EF5 и WebApi. "Текущие" пакеты (те, которые не отмечены устаревшими) предназначены для WebApi2 и EF6. В настоящее время нет возможности комбинировать и сопоставлять EF5 с WebApi2. Если это важно, добавьте это в пользовательский голос Breeze

Ответ 4

Я понимаю, что это уже старый пост с ответом, но я подумал, что добавлю этот маленький самородок.

Если у вас есть много проектов, использующих Entity Framework, и вы хотите их понизить, сначала измените один из проектов вручную, а затем обновите страницу описания пакета, и вы получите "Консолидат" в качестве действия. Выберите это, затем выберите версию 5.0.0, и это позволит вам понизить все проекты до 5.0.0

Ответ 5

на консоли диспетчера пакетов

PM> Uninstall-package EntityFramework

PM> Install-Package EntityFramework -version 5.0.0