Что ж, я сильно усложнил истинную проблему, указав проблему для конкретного элемента, когда оказалось, что даже простой тестовый атрибут на ConfigurationSection
не вернул бы ожидаемое значение. Я также понял, что не могу получить доступ к AppSettings
, что привело к разгульной подсказке.
Конечная причина? Проект был скомпилирован как библиотека классов. Файлы конфигурации доступны только на уровне приложения . Поскольку я использовал NUnit для запуска тестов, файл конфигурации из тестового проекта переопределял файл разработки для библиотеки классов. Это, вероятно, очевидно для любого разработчика, который не застрял в ASP.NET.
Путем добавления следующего configSection
к app.config
в тестовом проекте:
<section name="customConfigSection" type="ClassLibraryNamespace.SettingsClass, ClassLibraryNamespace"/>
и заполнив соответствующий раздел, к данным можно получить доступ, как и ожидалось.
Надеюсь, это сэкономит кому-то часы отладки.