Произошла ошибка активации при попытке получить экземпляр типа 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>