2013-05-23 3 views
0

Мне нужно использовать объект ServiceReference в плагине, который я пишу. Однако этот плагин имеет свой собственный файл app.config отдельно от конфигурационного файла родительской программы. Я знаю, как получить доступ к этому второму файлу конфигурации, но я до сих пор не знаю, как использовать эти данные в конструкторе для моего объекта ServiceReference. Конструкторы объекта запрашивают строковые переменные, такие как endpointConfigurationName или remoteAddress, но тогда моя программа не может найти соответствующее имя endpointConfigurationName в моем дополнительном файле конфигурации. Как заставить программу использовать мой дополнительный объект конфигурации «myConfiguration»?Как читать конфигурацию конечных точек из другого файла app.config

ServiceModelSectionGroup serviceModel = ServiceModelSectionGroup.GetSectionGroup(myConfiguration); 
myClient = new MyClient(); 
+0

Похоже, вы, вероятно, просто хотите открыть другой файл app.config как обычный XML-файл и проанализировать нужный элемент. – paulsm4

+0

Как вручную определить WebHttpBinding в коде C#? – WEFX

+1

В: Как вручную определить привязку WebHttpBinding в коде C#? A: Обычно вы этого не делаете. Но вы * можете * создать экземпляр подкласса веб-службы, предоставленный IDE, и динамически изменить его свойство служебного адреса. – paulsm4

ответ

1

Я использовал предложение @ paulsm4 и нашел this page на сайте Microsoft. Используя это, я закончил вверх с этим, и это замечательно работает:

ChannelFactory<IMyService> myFactory = new ChannelFactory<IMyService>(new WebHttpBinding(), myRemoteAddress); 
myFactory.Endpoint.Behaviors.Add(new WebHttpBehavior()); 
myClient = cf.CreateChannel(); 

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

Смежные вопросы