Как вызвать веб-сервис с настраиваемым URL - PullRequest
0 голосов
/ 27 сентября 2011

Я написал веб-сервис.Я написал сайт.Я хочу, чтобы BLL-код веб-сайта вызывал веб-службу.

У меня есть таблица конфигурации с URL-адресом этой службы.Я вставляю URL веб-сервиса в код вызова.Какой веб-клиент или сокет в C # мне следует использовать, чтобы получать динамический URL-адрес веб-службы?

Я подумал использовать:

WebClient webClient = new WebClient();
UTF8Encoding response = new UTF8Encoding();
string originalStr = response.GetString(webClient.DownloadData(BLLConfig.Current);

Но, может быть, есть более элегантный способ?

Я загружаю конфиги во время выполнения из таблицы БД.

Вот как я пытался использовать веб-ссылку в Visual Studio:

using (var client = new GetTemplateParamSoapClient("GetTemplateParamSoap"))
{
    TemplateParamsKeyValue[] responsArray = client.GetTemplatesParamsPerId(CtId, tempalteIds.ToArray());

    foreach (var pair in responsArray)
    {
        string value = FetchTemplateValue(pair.Key, pair.Value);
        TemplateComponentsData.Add(pair.Key, value);
    }
}

Ответы [ 2 ]

1 голос
/ 27 сентября 2011

Вы можете добавить URL-адрес веб-службы в качестве веб-ссылки в Visual Studio, а затем установить для свойства Service.URL значение из конфигурации

0 голосов
/ 27 сентября 2011

.NET имеет много встроенной поддержки для использования веб-сервисов ... после добавления ссылки на сервис в ваш проект он генерирует необходимый код ... который вы можете использовать как есть - если вам нужно настроить URLсгенерированный класс клиента имеет свойство URL, которое вы можете установить соответствующим образом ... для превосходного пошагового руководства см. http://johnwsaunders3.wordpress.com/2009/05/17/how-to-consume-a-web-service/ и посмотрите клиент SOAP xml - с помощью Visual Studio 2010 c # - как?

...