2017-02-08 18 views
0

У меня есть функция веб-службы, как показано нижеФункция подписи не отражает так же, как и в веб-сервиса, когда вы совершаете звонок из внешнего

 public void download_docs(string id,DateTime date, 
           out string error_msg,out int i, 
           out document_dtls document_details) 
    { 
    //logic  
    } 

Два в параметрах и трех параметров OUT. Но когда я пытаюсь использовать то же самое, подпись функции показывает только два параметра, как показано ниже в pic. Первая строка параметров OUT error_msg не отображается. , как можно показать все enter image description here

+0

Он превратил первый параметр в возвращаемое значение, похоже, поскольку подпись теперь имеет значение возвращаемой строки, а не пустое. –

+0

@SamiKuhmonen спасибо mate..i не заметил это .. – Sachu

ответ

1

Первый out параметр преобразуется в возвращаемое значение метода обслуживания. Несмотря на то, что значение WSDL specifcation provides a way для дифференцирования параметров возврата и вывода, это дифференцирование является необязательным. Логика генерации автоматического кода Visual Studio при создании ссылки на службу не делает этого удаления и преобразует первый параметр out в возвращаемое значение, если метод службы равен void. Семантически, вызов веб-службы будет точно таким же.