Я использую DbProviderFactories на своем уровне данных (на основе Entity Framework) и использую SQLite для своей базы данных, но мне не нужно иметь App.Config, чтобы иметь следующий код:
<configuration>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite"/>
<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
</DbProviderFactories>
</system.data>
</configuration>
Вместо этого я хотел бы, чтобы мой уровень данных вставлял это программно. Кто-нибудь знает, как это сделать?
РЕДАКТИРОВАТЬ:
Причина этого в том, что я использую контейнер IoC для выбора уровня данных, а некоторые из моих слоев данных не нуждаются в значениях App.Config или жестко привязаны к уровню данных.
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", @"C:\Shared\app.config");
Отсюда и полезность этого вопроса. - person teynon   schedule 07.10.2013