2010-06-13 3 views
0

Я хочу разделить бизнес-уровень (BLL) приложения asp.net на несколько компонентов. Каждый компонент представляет собой библиотеку классов .NET, которая скомпилирована как отдельная DLL. Эти компоненты должны иметь свои собственные файлы конфигурации. Например, «MyNameSpace.Users.dll» содержит классы о пользователях веб-сайта и существует политика паролей, чтобы проверить, не превышает ли длина пароля не менее x символов. Когда веб-мастер редактирует файл конфигурации этой библиотеки DLL и устанавливает x в y, тогда компонент (DLL) должен использовать новое значение (y) в будущем и применять пароли как минимум для y символов. Я хочу, чтобы каждый компонент был одним проектом и скомпилировал их отдельно (и не ставил все проекты в решение в Visual Studio) и помещал библиотеки DLL в папку «Bin» моего приложения ASP.NET.Архитектура плагина ASP.NET, проблема с настройками

Возможно ли это? Где я должен помещать эти файлы конфигурации?

ответ

0

imho Это возможно, но не из коробки.

ASP.NET использует defautl только один web.config в корневом каталоге (и обрабатывает файлы .config машины выше в иерархии). Но вы можете создавать собственные поставщики настроек для каждой из ваших DLL, которые считывают значения из отдельных файлов .config. см. http://msdn.microsoft.com/en-us/library/ms228060.aspx Таким образом вы создаете другой SettingsManager, предоставляющий настройки частям приложения и считывая информацию из файлов.

Кроме того, вы можете использовать FilesystemWatcher для перезагрузки значений при редактировании дополнительных .configs.

+0

могли бы вы дать мне образец и дайте мне знать, если если поддержка для перезаряжания конфигураций на изменении редактирования конфигурационного файла (что-то как FileSystemWatcher) – Xaqron

Смежные вопросы