Microsoft.Практика.EnterpriseLibrary.Данные.DLL, но не был обработан в пользовательском коде


Поиск в google и использование доступа к данным корпоративной библиотеки для подключения базы данных.

Установлен только пакет доступа к данным с использованием https://www.nuget.org/packages/EnterpriseLibrary.Data/.

После добавления в проект, я установил конфигурацию следующим образом,

     <configSections>
        <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
    </configSections>
  <dataConfiguration defaultDatabase="dProvider" />
    <connectionStrings>
        <add name="dProvider" connectionString="server=local;Initial Catalog=n;uid=sa;pwd=pwd"
            providerName="System.Data.SqlClient" />
    </connectionStrings>

Вызывается через приложение следующим образом,

Database db;
            string sqlCommand;
            DbCommand dbCommand;

            db = DatabaseFactory.CreateDatabase("dProvider"); or DatabaseFactory.CreateDatabase();

После запуска приложения, я получил следующее исключение,

{"Database provider factory not set for the static DatabaseFactory. Set a provider factory invoking the DatabaseFactory.SetProviderFactory method or by specifying custom mappings by calling the DatabaseFactory.SetDatabases method."}

Какую ошибку я совершил ? Как решить этот вопрос ?

1 9

1 ответ:

Наконец-то нашел ответ. Это произошло из-за раздела конфигурации.

Я использовал версию 6, но здесь я упомянул, как версия 5 в разделе конфигурации. Итак, произошла ошибка.

Я заменил раздел конфигурации следующим образом, он отлично работал в хорошем смысле. : -). Большое спасибо за помощников.

<configSections>
         <section name="dataConfiguration" 
      type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, 
            Microsoft.Practices.EnterpriseLibrary.Data"/>
    </configSections>

И использовал класс DataBaseProviderFactory для создания экземпляра.

DatabaseProviderFactory factory = new DatabaseProviderFactory();

            db = factory.Create("dProvider");