Может ли кто-нибудь понять, почему я продолжаю получать эту ошибку, проверяя бета-версию EF 5

Установленная визуальная студия 11 beta, как хотелось протестировать бета-версию EF 5, но продолжайте эту ошибку.

Метод не найден: ‘Void System.Data.Objects.ObjectContextOptions.set_UseConsistentNullReferenceBehavior (Boolean)’.

Проект представляет собой новое пустое приложение MVC3, а ниже – некоторый код, который иллюстрирует, как происходит ошибка.

public class Blog { public int Id { get; set; } public string Name { get; set; } } public class EFDbContext : DbContext { public DbSet Blogs { get; set; } } public class HomeController : Controller { protected EFDbContext Db = new EFDbContext(); public ActionResult Index() { Blog B = new Blog(); B.Name = "Test"; Db.Blogs.Add(B); Db.SaveChanges(); return View(); } } 

Посмотрел на ошибку в google, но ничего не получилось, и я не совсем уверен, что это за ошибка. Я добавил fragment нижерасположенной таблицы, если это поможет.

[MissingMethodException: метод не найден: ‘Void System.Data.Objects.ObjectContextOptions.set_UseConsistentNullReferenceBehavior (Boolean)’.] System.Data.Entity.Internal.LazyInternalContext.InitializeContext () +0 System.Data.Entity.Internal.InternalContext.Initialize () +31
System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType (тип entityType) +39
System.Data.Entity.Internal.Linq.InternalSet 1.Initialize() +137
System.Data.Entity.Internal.Linq.InternalSet
1.Initialize() +137
System.Data.Entity.Internal.Linq.InternalSet
1.Initialize() +137
System.Data.Entity.Internal.Linq.InternalSet
1.get_InternalContext () +38 System.Data.Entity.Internal.Linq.InternalSet 1.ActOnSet(Action action, EntityState newState, Object entity, String methodName) +236
System.Data.Entity.Internal.Linq.InternalSet
1.ActOnSet(Action action, EntityState newState, Object entity, String methodName) +236
System.Data.Entity.Internal.Linq.InternalSet
1.ActOnSet(Action action, EntityState newState, Object entity, String methodName) +236
System.Data.Entity.Internal.Linq.InternalSet
1.Add (объект объекта) +200 System.Data.Entity.DbSet`1.Add (объект TEntity) +72

Похоже, вы используете EF5 EntityFramework.dll, но затем используете .NET 4 вместо .NET 4.5.

Если вы планируете нацеливаться на .NET 4.5, убедитесь, что .NET 4.5 установлен на компьютере, на котором вы используете код. VS11 устанавливает .NET 4.5 для вас, но вы также можете установить только время выполнения на не-dev машине.

Если вы намерены настроить таргетинг на .NET 4, убедитесь, что проект установлен на .NET 4, а затем удалите и переустановите пакет Eu5 NuGet. Вы должны удалить и переустановить, поскольку NuGet не будет автоматически изменять сборку при повторном запуске проекта.

Обновить:

Вы также можете увидеть это исключение, если у вас все еще установлен CTP EF June или если он не удалось правильно удалить. Перед установкой VS11 попробуйте полностью удалить июньский CTP. Если вы все еще видите проблемы, они открывают «Командная строка разработчика» в качестве администратора и запускают:

 gacutil /u System.Data.Entity,Version=4.2.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089 

Если это все еще не удается, вы можете попытаться принудительно удалить из GAC:

 gacutil /uf System.Data.Entity,Version=4.2.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089 

Убедитесь, что на вашей целевой системе установлен .net 4.5. У меня было то же сообщение, оказалось, что у меня не было .net 4.5, установленного на одном из моих серверов фермы.

Если вам не удается избавиться от 4.2 System.Data.Entity от GAC, как я, там, где он жаловался, что установщик зависит от него,

 G:\Program Files (x86)\Microsoft Visual Studio 2012 Ultimate\VC>gacutil /uf System.Data.Entity,Version=4.2.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089 Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.17929 Copyright (c) Microsoft Corporation. All rights reserved. Assembly: System.Data.Entity, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b 77a5c561934e089, processorArchitecture=MSIL Assembly could not be uninstalled because it is required by Windows Installer Number of assemblies uninstalled = 0 Number of failures = 0 

вы можете избавиться от ключей в реестре из этой папки:

 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\Global 

и повторите команду gacutil / uf

Я решил эту проблему, удалив политику:

C: \ Windows \ Microsoft.NET \ assembly \ GAC_MSIL \ policy.4.0.system.data.entity \ v4.0_0.0.0.0__b77a5c561934e089 \ policy.4.0.system.data.entity.config

Который имел эту информацию: … bindingRedirect oldVersion = “4.0.0.0” newVersion = “4.2.0.0” …

Надеюсь, это поможет Руи

  • дизайн схемы базы данных streamов сообщений
  • Использование миграции Entity Framework (сначала кода) при производстве
  • Учебники ADO.NET Entity Framework
  • Как разогревать приложение ASP.NET MVC на IIS 7.5?
  • Код структуры Entity Framework Сначала используйте Guid как идентификатор с другой колонкой Identity
  • Перенос EF для изменения типа данных столбцов
  • Первые таблицы переходов EF5 и таблицы поиска
  • Entity framework 4.3 запускает миграцию при запуске приложения
  • Место для размещения Database.SetInitializer
  • Платформа Entity Framework и пул соединений
  • EF Code First "Недопустимое имя столбца« Дискриминатор », но без наследования
  • Interesting Posts

    Вставить строки для отсутствующих дат / раз

    Как читать и писать регистры x86 флаги напрямую?

    Могу ли я использовать струйную бумагу с покрытием для печати с помощью цветного лазерного принтера?

    Каковы эти папки, созданные на моем зеркале Western Digital 2TB?

    Регистрация фоновой задачи в приложении Silverlight 8.1

    Почему нет classа java.lang.Array? Если java-массив является объектом, не должен ли он расширять Object?

    java.lang.illegalstateexception не удалось найти метод (представление) в fragmentе андроида classа активности

    Удаление повторяющихся комбинаций (независимо от порядка)

    Получение лучших значений по группам

    Как рассчитать мера сходства расстояния заданных 2 строк?

    Почему AddRange быстрее, чем использование цикла foreach?

    Как мой браузер находит ближайшие корневые серверы DNS?

    Android: BitmapFactory.decodeStream () из памяти с файлом 400 КБ с бесплатной кучей 2 МБ

    Как создать алфавитную полосу прокрутки, отображающую всю букву в android?

    Включение net.tcp в IIS7

    Давайте будем гением компьютера.