Переменная уровня сервиса WCF - C # - PullRequest
1 голос
/ 14 января 2010

Моя служба WCF размещена в службе Windows, а
Я добавил несколько ключей в раздел appSettings службы Windows app.config.

Теперь я хочу, чтобы эти ключи были доступны в нескольких файлах кода в библиотеке WCF.
Есть ли способ определить переменную уровня сервиса WCF, чтобы я мог избежать -

ConfigurationSettings.AppSettings["xxx"]

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

Спасибо!

1 Ответ

1 голос
/ 14 января 2010

Используйте Внедрение зависимостей , чтобы внедрить эти переменные в вашу службу. Это также отсоединит ваш сервис от системы конфигурации (хорошая вещь, IMO).

Вот описание о том, как реализовать Внедрение в конструктор с WCF

Определите класс ( Parameter Object ), который инкапсулирует знания, которые вы хотите сделать доступными, и внедрите экземпляр этого класса в вашу службу WCF.

Вы можете заполнить объект параметра из .config при подключении зависимостей, но теперь вы делаете это только в одном месте.

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