Произошла ошибка активации при попытке получить экземпляр типа Database, ключ ""

Я использую Enterprise Library 5.0. Я устанавливаю время выполнения соединительной строки. (Строка подключения по умолчанию.)

Когда следующая строка выполняется,

 Database db = DatabaseFactory.CreateDatabase();

Я получаю сообщение об ошибке "Произошла ошибка активации при попытке получить экземпляр типа База данных, ключ" ""

В то же время в конфиге приложения есть соединительная строка.

Однако при перезапуске приложения все работает нормально.

Я также проверил ошибку активации при попытке получить экземпляр типа базы данных, ключ "" <- пусто, но это не помогает.

1 ответ

Вы должны определить "defaultDatabase", которая указывает на одну из ваших строк подключения. Здесь я устанавливаю его в "MainConnectionString".

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
  </configSections>

  <dataConfiguration defaultDatabase="MainConnectionString">



<connectionStrings>

  <!-- Sql Server(s) -->
  <add name="MainConnectionString" connectionString="Server=.\MyInstance;Database=pubs;Trusted_Connection=True;"
       providerName="System.Data.SqlClient"/>


</connectionStrings>
Другие вопросы по тегам