Портирование службы WCF Web.config в Windows Service App.config - PullRequest
0 голосов
/ 04 ноября 2011

Я работал с дюжиной служб WCF, которые были развернуты на разных машинах с IIS. Все привязки / конфигурации были сохранены в обычном файле "web.config", который был создан, чтобы сделать сервисы более настраиваемыми и сохранить сам код сервиса более чистым. Однако недавно мне было поручено создать службу Windows для размещения этих служб WCF. У меня есть один вопрос: скопировать ли все настройки из файла web.config в файл App.config для службы Windows? Или мне нужно перенастроить все конечные точки / привязки / и т.д. использовать другой формат в файле App.config? Я никогда раньше не создавал службы Windows, и не уверен на 100%, что мне нужно для настройки после создания Windows Service Host. Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 04 ноября 2011

Я всегда думал, что модель конфигурации .NET не подходит для конфигурации службы WCF.

Существует способ научить WCF извлекать его конфигурацию из альтернативного местоположения. Мне нравится устанавливать его так, чтобы служба WCF получала информацию о конфигурации из ServiceName.config, а не web.config или AppName.exe.config. Это решает проблему повторения элементов, упомянутых Харпером Шелби.

Вот полное объяснение и некоторый код.

Используя этот пользовательский узел службы, перевести службу WCF из IIS в автономную модель действительно просто.

См. Также, Конфигурация WCF - выделите его из app.config

1 голос
/ 04 ноября 2011

Элементы конфигурации WCF в web.config должны переводиться непосредственно в app.config.В прошлом я вырезал и вставлял подобные элементы web.config.Единственное, на что следует обратить внимание, это то, что ни web.config, ни app.config не любят повторение определенных элементов, поэтому, если вы объединяете данные конфигурации из нескольких файлов web.config, вам нужно убедиться, что вы не повторяете разделыэто должно существовать только один раз.

...