Описание параметров веб-сервиса ASMX WebMethod - PullRequest
6 голосов
/ 21 июля 2009

Это кажется простым вопросом, но я не смог найти ответ в Интернете через многие поиски в Google. У меня есть веб-сервис на C #, и когда я захожу на его страницу ASMX в браузере, для определенного метода он всегда имеет следующее:

"Ниже приведен пример запроса и ответа SOAP 1.1. Показанные заполнители необходимо заменить фактическими значениями."

Аналогично для SOAP 1.2 и HTTP POST. То, что я хочу знать, это как Я заменяю показанные заполнители, такие как:

<myParameter>string</myParameter>

Где 'string' является заполнителем. И в ответе:

<xsd:schema>schema</xsd:schema>xml

Где «схема» и «xml» - это заполнители. Я использовал другой веб-сервис, в котором эти заполнители заполнены примерами значений для параметров и ответов, и я хотел бы также определить такие примеры для своих собственных веб-методов. Я смог описать весь метод следующим образом:

[WebMethod(Description="Does awesome things.")]

Но я не нашел такой вещи для отдельных параметров веб-метода.

Ответы [ 3 ]

4 голосов
/ 21 июля 2009

По умолчанию вызывается DefaultWsdlHelpGenerator.aspx для создания страницы «справки». Вы можете установить другой (или измененный) шаблон с помощью элемента wsdlHelpGenerator в файле web.config.

0 голосов
/ 21 июля 2009

Вы не можете сделать это. Если на странице справки (которую вы описываете) нет поля ввода для определенного параметра, то это означает, что она не знает, как это сделать.

Вы не должны обращать слишком много внимания на эти страницы в любом случае. Они уходят с WCF.

В любом случае, они никогда не пользовались большим спросом, кроме самых простых веб-сервисов. Они были способом вовлечь людей в игру веб-сервиса с самого начала, когда не было инструментов, которые могли бы помочь вам протестировать веб-сервис. Вместо этого используйте soapUI .


Кстати, также см. Microsoft: веб-сервисы ASMX являются «устаревшей технологией» , почему имеет смысл игнорировать страницы только для ASMX.

0 голосов
/ 21 июля 2009

Почему вы хотите это сделать? Та страница, которую вы видите в браузере, когда нажимаете на asmx, просто дает примеры запросов и ответов. Если вы хотите получить данные, используя эти примеры, замените значения плашдолдера в запросе тем, что вы запрашиваете у сервиса, и POST к нему ...

Редактировать: я имею в виду, если вам действительно нужно заменить эти значения плашдолеров, напишите код в вашем сервисе, чтобы определить, когда кто-то выполняет GET (подразумевает просмотр из браузера), и поиграйте с ответом, изменив значения заполнителей на что угодно вам требуется.

...