EF6 «DbConfigurationClass» был установлен, но этот тип не был обнаружен — несколько DbContexts и DbConfigurations.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 EF6 «DbConfigurationClass» был установлен, но этот тип не был обнаружен — несколько DbContexts и DbConfigurations.

Сообщение Anonymous »

У меня есть решение, в котором есть два DbContexts, и мы находимся в процессе перехода с EF4 на EF6. В старом DbContext сначала использовался код, и мы в основном используем новый, сгенерированный сначала dbContext, но нам нужны оба из них из-за внешних зависимостей.

Мои классы выглядят так :

Код: Выделить всё

namespace Old.Busted.EF.DAL
{
[DbConfigurationType(typeof(Old.Busted.EF.DAL.OldConfiguration))]
public class OldContext : DbContext[...]

public class OldConfiguration : DbConfiguration[...]
}

namespace New.Shiny.EF.DAL
{
[DbConfigurationType(typeof(New.Shiny.EF.DAL.NewConfiguration))]
public class NewContext : DbContext[...]

public class NewConfiguration : DbConfiguration[...]
}
Точная ошибка, которую я получаю:


Экземпляр 'NewConfiguration ' был установлен, но этот тип
не был обнаружен в той же сборке, что и контекст 'OldContext'. Либо
поместите тип DbConfiguration в ту же сборку, что и тип DbContext
, используйте DbConfigurationTypeAttribute для типа DbContext, чтобы
указать тип DbConfiguration, либо установите тип DbConfiguration в
конфигурации. файл.


который пытается применить новую конфигурацию к старому контексту. Библиотека, в которой находится код взлома, является единственной библиотекой, которая ссылается как на старый, так и на новый EF DAL, и, более того, это исключение генерируется только тогда, когда тесты запускаются в командной строке через mstest - они проходят нормально, если работать изнутри. Visual Studio.

Использование .NET 4.0 и Visual Studio 2010.

Что я пробовал:
  • помещение информации о конфигурации в файлы конфигурации вместо кода (без изменений)
  • помещение одной конфигурации DbConfiguration в общую библиотеку (безубыточность
    больше всего)
  • с использованием конструктора DbContext, передающего объект DbConnection вместо конструктора без параметров или строкового конструктора (без изменений)


Подробнее здесь: https://stackoverflow.com/questions/204 ... multiple-d
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • EF6: общий DbConfiguration для разных DbContexts
    Anonymous » » в форуме C#
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Как использовать несколько DbContexts в одном выражении запроса в Entity Framework Core
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Как объединить таблицы из нескольких dbcontexts в одну ViewModel?
    Гость » » в форуме C#
    0 Ответы
    45 Просмотры
    Последнее сообщение Гость
  • Использование нескольких EF Core DbContexts в одном приложении в чистой архитектуре
    Anonymous » » в форуме C#
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous
  • Entity Framework Core с использованием нескольких DbContexts
    Anonymous » » в форуме C#
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»