SharePoint 2010 - использование веб-службы SOAP - PullRequest
2 голосов
/ 31 января 2012

Я добавил ссылку на службу SOAP в моем проекте VS2010.У меня есть форма, которая регистрирует пользователей для рассылки новостей.Чтобы заставить эту форму работать, мне нужно отредактировать файл web.config сервера SharePoint и добавить привязки SOAP.Если я не сделаю этого и не добавлю его в app.config моего проекта, сервер выдаст ошибку:

Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт 'contractAPI.Soap' в клиенте ServiceModelраздел конфигурации.

Как я могу обойти web.config и использовать app.config для настройки службы SOAP или настроить ее программно с помощью C #?

1 Ответ

2 голосов
/ 31 января 2012

Вы можете установить привязки в вашем коде так:

internal static WServiceSoapClient CreateWebServiceInstance()
{
    BasicHttpBinding binding = new BasicHttpBinding();
    binding.SendTimeout = TimeSpan.FromMinutes(1);
    binding.OpenTimeout = TimeSpan.FromMinutes(1);
    binding.CloseTimeout = TimeSpan.FromMinutes(1);
    binding.ReceiveTimeout = TimeSpan.FromMinutes(10);
    binding.AllowCookies = false;
    binding.BypassProxyOnLocal = false;
    binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
    binding.MessageEncoding = WSMessageEncoding.Text;
    binding.TextEncoding = System.Text.Encoding.UTF8;
    binding.TransferMode = TransferMode.Buffered;
    binding.UseDefaultWebProxy = true;
    return new WServiceSoapClient(binding, new EndpointAddress("http://yourservice.com/service.asmx"));
}
...