Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Подключение внешнего config файла


Автор: antit 24.8.2010, 14:44
Всем привет.

ситуация такая - есть библиотека классов, в ней определен свой config файл с секцией connectionStrings
нужно подключать эту сборку к web приложению.

Известно, что существует возможность подключения внешнего config файла к web.config
    <connectionStrings configSource="Library.config"/>
Это работает если Library.config находиться в веб приложении.

А что делать. если он находится в подключаемой сборке? Как сослать на него в configSource?

Автор: jonie 24.8.2010, 19:02
antit, в файле web.config (аналог app.config) для веба надо тоже самое сделать..

Автор: antit 25.8.2010, 08:45
наверное я что-то не так объяснил

хочу сделать следующее:

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

Для того чтобы не создавать или копировать все классы в каждом проекте заново, решил подключать их в качестве сборки.
В этой библиотеке хочу использовать config файл где буду хранить строки подключения к базам, а вот в web.config проектов мне уже по идее не нужно указывать эти строки.

Но! Если использовать при написании библиотеки типов
Код

SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);


то, строки подключения вытаскиваются не из  library.config подключаемой сборки, а из web.config
Конечно можно жестко кодировать строки подключения, но это мне не нужно.

Вот и вопрос как сделать так, чтобы  ConfigurationManager в коде библиотеки типов брал данные из  library.config?

Автор: jonie 26.8.2010, 22:17
antit, обычно и имхо проще для такого дела использовать свои ConfigurationSection-ы
Пример : http://nishantrana.wordpress.com/2009/03/26/using-custom-configuration-section-and-configuration-manager-class-in-net-%E2%80%93-1/
В свою очередь весь конфиг остается в web.config-е

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)