В моем решении у меня есть 2 проекта, которые используют Entity Framework 6. Каждая точка указывает на другую базу данных, причем обе эти данные предоставляют SQL Server. Третий проект в моем решении должен использовать обе базы данных. Моя проблема заключается в том, как настроить этот контекст. Я попытался создать класс конфигурации в отдельной сборке:
namespace OSAD_Base
{
class EfDbConfiguration : DbConfiguration
{
public EfDbConfiguration()
{
SetProviderServices(SqlProviderServices.ProviderInvariantName, SqlProviderServices.Instance);
}
}
}
и ссылаясь на эту конфигурацию в каждом классе контекста:
namespace IntegrationDb
{
[DbConfigurationType("OSAD_Base.EfDbConfiguration, OSAD_Base")]
public partial class IntegrationEntities : DbContext
{
public IntegrationEntities(string connectionString)
: base(connectionString)
{
}
}
}
При инициализации моего первого, все работает правильно, но когда второй контекст инициализируется (порядок не имеет значения), я получаю и ошибку:
Был установлен экземпляр "EfDbConfiguration", но этот тип не был обнаружен в той же сборке, что и контекст "B1Entities". Либо введите тип DbConfiguration в ту же сборку, что и тип DbContext, используйте DbConfigurationTypeAttribute в типе DbContext, чтобы указать тип DbConfiguration, или задайте тип DbConfiguration в файле конфигурации. Подробнее см. http://go.microsoft.com/fwlink/?LinkId=260883. *
Я также попытался создать раздел entityframework в моем app.config(проекта запуска), но получил следующую ошибку:
Не удалось инициализировать конфигурационную систему
Нераспознанный раздел конфигурации entityFramework
Как я могу использовать 2 отдельных проекта EF в одном решении?