C # Получение строки из одного файла конфигурации для использования несколькими проектами - PullRequest
2 голосов
/ 26 марта 2010

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

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

Как бы я поступил так?

Спасибо!

Ответы [ 2 ]

1 голос
/ 26 марта 2010

Здесь существует множество возможностей:

  1. Добавьте путь к файлу конфигурации службы Windows в качестве параметра в файле конфигурации службы WCF и используйте этот путь для чтения файла с помощьюXML Reader.

  2. Сохраните путь к папке в какой-либо централизованной системе, например в базе данных или реестре, и обе службы получат параметр из этого централизованного расположения.

  3. Укажите путь в каждом отдельном файле конфигурации, но используйте событие после сборки, чтобы убедиться, что они остаются актуальными.(Например, может быть, событие после сборки извлекает параметр конфигурации из БД и затем записывает его в файл конфигурации)

  4. Пусть одна служба представит параметр конфигурации как вызов общедоступной службы,Например, служба WCF может вызвать метод службы Windows, чтобы определить, какой путь обрабатывать.

1 голос
/ 26 марта 2010

Вы можете поместить его в Machine.config, и приложение WCF и служба Windows смогут получить к нему доступ.

http://msdn.microsoft.com/en-us/library/ms229697(VS.71).aspx

...