У меня есть приложение WPF в VS 2008 с некоторыми ссылками на веб-сервисы. По разным причинам (максимальный размер сообщения, методы аутентификации) мне нужно вручную определить ряд параметров в app.config клиента WPF для привязок службы.
К сожалению, это означает, что когда я обновляю ссылки на сервисы в проекте, мы получаем беспорядок - множественные привязки и конечные точки. Visual Studio создает новые привязки и конечные точки с числовым суффиксом (т. Е. «Service1» как дубликат «Service»), что приводит к неверной конфигурации, так как в проекте может быть только одна привязка для каждой ссылки на службу.
Это легко скопировать - просто создайте простой веб-сервис ASP.Net "Hello World" и приложение WPF в решении, измените maxBufferSize и maxReceivedMessageSize в привязке app.config, а затем обновите ссылку на службу.
В данный момент мы работаем над этим, просто отменив извлечение файла app.config после обновления ссылок, но я не могу не думать, что должен быть лучший способ!
Кроме того, настройки, которые нам нужно изменить вручную:
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm" />
</security>
и
<binding maxBufferSize="655360" maxReceivedMessageSize="655360" />
Мы используем класс фабрики услуг, поэтому, если эти настройки можно каким-то образом установить программным способом, это сработает, хотя свойства, кажется, не выставляются.