Подтвердить что ты не робот

EntityFramework.dll vs System.Data.Entity.dll - двусмысленность

Интересно, что у EntityFramework.dll и System.Data.Entity.dll есть общее и что у них разные? Мой проект ссылается на System.Data.Entity.dll(июньский CTP), чтобы использовать первую модель кода, и все работает нормально.

Теперь я хочу использовать инструмент First First Migrations, и для него требуется добавить EntityFramework.dll, который я также должен добавить в свой проект. Однако, когда упоминаются обе библиотеки (EntityFramework.dll и System.Data.Entity.dll), я получаю много ошибок компилятора, утверждая, что некоторые классы определены в обеих библиотеках.

Когда я удаляю EntityFramework.dll, проект снова компилируется, но я не могу использовать Migrations. Когда ссылается только на EntityFramework.dll, я получаю ошибки complier, сообщающие мне, что некоторые классы не найдены (например, пространственный тип данных).

Что мне делать в этой ситуации? Заранее благодарю вас!

4b9b3361

Ответ 1

Версия System.Data.Entity.dll "4.2.0.0" (июнь CTP 2011) содержит все: от EFv4.0 и EFv4.1 = и API ObjectContext, и DbContext API + новые функции, но, вероятно, это единственная версия для долгое время, которое объединит эти два API в одной и той же сборке. Этот CTP мертв. Новые функции ядра будут перенесены в .NET 4.5, а DbContext API будет по-прежнему отправляться в виде отдельного пакета NuGet, содержащего EntityFramework.dll. Все описано здесь.

Переходы кода зависят от EFv4.1 Update 1 и его EntityFramework.dll. Они не совместимы с июньским CTP, и это описано непосредственно в примечаниях к установке или предпосылки= вы не можете использовать их с June CTP.