Система конфигурации .NET 2.0 и выше достаточно мощная и расширяемая - пока вы не хотите изменять факт, что все это происходит из файлов XML в файловой системе.
В моем требовании я не могу изменять файлы, так как мое приложение работает в управляемой среде вне моей досягаемости - но я могу изменить базу данных SQL Server.
Итак, я смотрю на сохранение конфигурационных файлов или разделов в таблице SQL, но как я могу связать конфигурационную систему .NET 2.0 с этим?
Есть ли способ написать "пользовательский поставщик конфигурации", который будет читать свои разделы конфигурации не из файла *.config в файловой системе, а из таблицы в базе данных SQL?
Я искал создание собственного настраиваемого ConfigurationSection или ConfigurationElement или даже настраиваемой конфигурации как таковой, но кажется, что я всегда возвращаюсь в тот момент, когда я могу расширить конфигурационную систему в файловой системе, Мне нравится, но я не могу заставить его читать мои XML-фрагменты из таблицы базы данных.....
Что мне не хватает? Кто-то сделал это уже и позаботится объяснить/поделиться?
Спасибо! Марк
PS: Я также попытался просто прочитать конфигурационный XML файл в строку и затем десериализовать его в соответствующий, например. ServiceModelConfigSection - это не работает, к сожалению, потому что базовый класс ConfigSection каким-то образом не реализует метод, который необходим для его XML-сериализации... (YIKES!!!)