Как использовать mailSettings\smtp как с параметром configSource, так и с атрибутами?

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

В настоящее время у меня есть это:

web.config:

<system.net>
    <mailSettings >
      <smtp configSource="email.config" from="[email protected]" />
    </mailSettings>
    <defaultProxy>
        <proxy bypassonlocal="True" usesystemdefault="False" />
    </defaultProxy>
</system.net>

email.config

<network host="myhost" password="" userName="" />

В идеале я бы установил configSource на mailSettings или system.net, но это не поддерживается.

Есть ли лучший способ сделать это?

Ответы

Ответ 1

Хорошо, это недоразумение с моей стороны. Я не думал, что смогу сделать:

<system.net>
    <mailSettings >
      <smtp configSource="email.config" />
    </mailSettings>
</system.net>

и

<smtp from="[email protected]">
    <network host="myhost" password="" userName="" />
</smtp>

Что вы можете. Надеюсь, я, будучи глупым публично, поможет кому-то еще сохранить свое достоинство и не придется задавать глупые вопросы.

Ответ 2

Вы должны решить: если вы используете configSource, он выигрывает, а остальные настройки игнорируются. Каковы ваши причины для использования обоих? Если это проблема с отладкой/выпуском, вы можете использовать два разных файла configSource и скопировать их в нужные места с помощью действия после сборки.