Добавьте пользовательский ConfigSection в Web.Config для указанной библиотеки классов - PullRequest
0 голосов
/ 11 февраля 2019

У меня есть приложение Asp.Net, которое ссылается на DLL, которая имеет несколько настроек в файле App.config.Однако я не могу задать имя для раздела Web.config при создании параметров из свойств моего веб-приложения, поэтому значения параметров никогда не читаются DLL.

Я открыл свойства своего веб-приложения из решенияИсследователь, выбрал опцию «Настройки» и создал новый файл Settings.settings.Я добавил настройки с теми же ключами, что и мой файл DLL .settings, но созданное <section> имеет неправильное имя (вместо имен DLL оно содержит пространство имен моего веб-приложения).

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

app.config моей DLL:

<applicationSettings>
    <DocumentProcessor.Properties.Settings>
        <setting name="Language" serializeAs="String">
            <value>es-GT</value>
        </setting>
        <setting name="CasingSelection" serializeAs="String">
            <value>Lowercase</value>
        </setting>
    </DocumentProcessor.Properties.Settings>
</applicationSettings>

Теги, сгенерированные моим Web.config:

<applicationSettings>
    <WebCaller.Properties.Settings>
       <setting name="CasingSelection" serializeAs="String">
           <value>Titlecase</value>
       </setting>
       <setting name="Language" serializeAs="String">
           <value>es-GT</value>
       </setting>
    </WebCaller.Properties.Settings>
</applicationSettings>

Предполагается, что DLL генерирует текст в регистре заголовков (как указано в web.config), но вместо этого использует настройку нижнего регистра по умолчанию (читать из файла app.config библиотеки DLL, если в web.config вызывающего абонента нет соответствующей настройки).

...