Тег конфигурации предприятия 4 тега конфигурации данных - PullRequest
4 голосов
/ 25 января 2011

Я использую корпоративную библиотеку для доступа к данным.Когда я запускаю приложение, в операторе CreateDatabase () я получаю следующее исключение:

Microsoft.Practices.ObjectBuilder2.BuildFailedException не было обработано кодом пользователя Message = "Текущая операция сборки (ключ сборкиКлюч сборки [Microsoft.Practices.EnterpriseLibrary.Data.Database, null]) не выполнен: значение не может быть пустым или пустым. (Тип стратегии Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy, index 2) "Source = "Microsoft.Practices.ObjectBuilder2"

Теперь я немного погуглил и обнаружил, что должен разместить

<dataConfiguration defaultDatabase="LocalSqlServer"/>

, но не знаю где.Это правильное решение?

Кроме того, во время установки корпоративной библиотеки я не видел ни одного оператора строки подключения?Итак, мне интересно, как он будет принимать строку подключения из файла web.config.

В разделе строки подключения моего файла web.config у меня есть:

<remove name="LocalSqlServer"/>
 <add name="LocalSqlServer" connectionString="Data Source=MSTR;Initial Catalog=USERDb;Integrated Security=true;" providerName="System.Data.SqlClient"/>

1 Ответ

6 голосов
/ 25 января 2011

Да, вам нужно добавить раздел dataConfiguration в web.config.

Сначала вам нужно добавить dataConfiguration в список разделов ConfigurationSection в вашем web.config:

<configSections>
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>

Затем вам нужно добавить строки подключения в web.config (вы уже сделали это):

<connectionStrings>
    <add name="LocalSqlServer" connectionString="Data Source=MSTR;Initial Catalog=USERDb;Integrated Security=true;" providerName="System.Data.SqlClient"/>      
</connectionStrings>

Затем вам нужно добавить актуальный раздел dataConfiguration в web.config:

<dataConfiguration defaultDatabase="LocalSqlServer"/>

Вы также можете использовать Средство конфигурирования Enterprise Library, чтобы сделать это и для вас.

...