Конфигурация раздела конфигурации для деталей стороннего платежного сервиса - PullRequest
0 голосов
/ 22 июля 2011

Я только что реализовал интерфейс со сторонним платежным сервисом для подписок на сайт, которым я занят. Сервис называется PayFast , вроде как местный PayPal. В настоящее время в моем конфигурационном узле AppSettings есть множество элементов с ключами с префиксом «PayFast», поэтому я изучаю варианты выделения их из основного файла web.config.

Самое простое, что приходит мне в голову, - это использовать внешний файл .config для этих специфичных для службы настроек, но это громоздко, и я ограничен структурой ключ / значение элементов add . Я бы предпочел реализовать собственный обработчик разделов, группу разделов и разделы для каждого платежного сервиса (я планирую добавить PayPal позже, а возможно и больше).

Как мне структурировать обработку этого пользовательского раздела, чтобы у меня было несколько разделов, один для локального макета сервиса, один для онлайн-тестирования сервиса, один для использования сервиса в реальном времени и т. Д. Я думаю, что самый внешний элемент должен иметь атрибуты, которые определяют, какой из внутренних разделов использовать, макетировать, тестировать и т. д. У меня нет особых проблем с этим в XML, и, возможно, будет полезен инструмент, который может генерировать обработчики из XML.

В качестве дополнительного бонуса в идеале хотелось бы, чтобы структуры верхнего уровня для каждой платежной службы также были сгруппированы в общем узле PaymentServiceProviders, но на данный момент это всего лишь желаемое за действительное.

1 Ответ

1 голос
/ 22 июля 2011

Я не уверен, какие свойства вам нужны в каждой среде, но я начинаю с чего-то вроде этого:

<environments>
    <environment name="test_env">
      [insert here whatever properties are specific for the test environment]
    </environment>
    <environment name="production">
      [insert here whatever properties are specific for the test environment]
      </environment>
</environments>

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...