EF6 Тип контекста 'System.Data.Entity.Core.Objects.ObjectContext' не поддерживается

У меня есть новый проект, созданный с использованием Visual Studio 2013 с моделью данных объекта ADO.NET (EF6).

Теперь мне нужно использовать некоторую функцию динамических данных (например, доступ к объекту MetaTable), поэтому я добавляю этот код:

MetaModel model = new MetaModel();
        model.RegisterContext(() =>
        {
            return ((System.Data.Entity.Infrastructure.IObjectContextAdapter)new KiwiJuiceEntities()).ObjectContext;
        }, new ContextConfiguration() { ScaffoldAllTables = true });

но у меня есть эта ошибка:

Type of context 'System.Data.Entity.Core.Objects.ObjectContext' is not supported

Обратите внимание, что ссылка на проект обновлена до EF6 (system.data.entity.core)

Ответы на вопрос(3)

поэтому понижение до EF 5 «решит» проблему.

 Antoine Meltzheim15 дек. 2013 г., 20:18
Как ты конкретно "опустился до EF5"?
 gidanmx218 дек. 2013 г., 16:25
Uninstall-Package EntityFramework -Force, Install-Package EntityFramework -Version 5.0.0 см .:stackoverflow.com/questions/10206090/...
 dani herrera23 апр. 2014 г., 12:06
Поддерживается в это время:stackoverflow.com/a/22016040/842935

EF 6 не имеетSystem.Data.Objects.ObjectContext, EF 6 перенес несколько типов, в том числеObjectContext, изSystem.Data.Entity.dll вEntityFramework.dllи изменили их пространства имен. Тот факт, что вы получили эту ошибку, говорит о том, что вы не пытались перекомпилировать приложение, вы просто заменилиEntityFramework.dll и надеялся на лучшее. Это не сработает. Вам нужно обновить код для работы с EF 6: вам нужно удалить ссылки наSystem.Data.Entity.dllи обновите свой код, чтобы ссылаться на новые типы.

Это может быть возможно для ссылки наIObjectContextAdapter.ObjectContext свойство находиться в какой-то библиотеке, которую вы используете, но, скорее всего, это будет в вашем собственном коде. Сообщение об ошибке (в той части, которую вы не включили в свой вопрос) должно указать вам, откуда оно приходит.

Рекомендации:

EF 6 System.Data.Objects.ObjectContext Ошибкаhttp://msdn.microsoft.com/en-US/data/dn469466http://support.microsoft.com/kb/2816241
 gidanmx211 дек. 2013 г., 22:17
У меня нет старой ссылки, обратите внимание на сообщение об ошибке в правильном пространстве имен: System.Data.Entity.Core.Objects.ObjectContext ...
 Siva Krishna Macha12 дек. 2013 г., 13:02
Да я вижу! Я просто упустил из виду! Извиняюсь!
Решение Вопроса

и элемента управления EntityDataSource для EF6. Пожалуйста, проверьте это, это сработало для меня.

http://blogs.msdn.com/b/webdev/archive/2014/01/30/announcing-preview-of-dynamic-data-provider-and-entitydatasource-control-for-entity-framework-6.aspx#

Чтобы зарегистрировать провайдера:

MetaModel model = new MetaModel();
model.RegisterContext(
    new Microsoft.AspNet.DynamicData.ModelProviders.EFDataModelProvider(
       () => new KiwiJuiceEntities()
    ),
    new ContextConfiguration() { ScaffoldAllTables = true }
);     

Ваш ответ на вопрос