В .NET, что такое время выполнения моего параметра app.config? - PullRequest
3 голосов
/ 18 ноября 2008

Если у меня есть следующий параметр в моем файле app.config. Это настройка, в которой мне нужно убедиться, что мой клиент WCF может согласовывать прокси-сервер по умолчанию.

<system.net>
    <defaultProxy enabled="true" useDefaultCredentials="true"></defaultProxy>
</system.net>

К сожалению, я не могу добавить файл app.config в моей среде. Как мне обеспечить эти настройки, устанавливая их во время выполнения?

Ответы [ 4 ]

0 голосов
/ 22 ноября 2008

Я предполагаю, что вы используете привязку, которая наследуется от WSHttpBindingBase. Если это так, вы также можете попробовать установить свойство 'UseDefaultWebProxy' в коде. Примерно так:

myWSHttpBinding.UseDefaultWebProxy = True;

Редактировать: BasicHttpBinding также имеет то же свойство.

0 голосов
/ 18 ноября 2008

Я думаю, что вы делаете, создаете объект System.Net.WebProxy, затем устанавливаете соответствующие переменные, затем устанавливаете System.Net.WebRequest.DefaultWebProxy:

System.Net.WebProxy proxy = new WebProxy();
proxy.UseDefaultCredentials = true;
WebRequest.DefaultWebProxy = proxy;

Этот пост рассказывает обо всем этом: Ссылка

Надеюсь, это поможет!

0 голосов
/ 18 ноября 2008

На странице свойств вашего проекта должна быть вкладка настроек. Все, что вы там поместите, на самом деле находится в файле * .settings в проекте, но также будет автоматически включено в файл app.config при развертывании. Можете ли вы внести изменения там?

0 голосов
/ 18 ноября 2008

Каким бы ни было определенное имя вашей исполняемой сборки (не библиотеки dll), добавьте ".config" в конце ...

так что если ваш исполняемый файл должен быть

AcmeWidgets.EastCoast.MyApplicationName.exe

Тогда app.config будет переименован в

AcmeWidgets.EastCoast.MyApplicationName.exe.config

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

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

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

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