Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 347

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 341 342 343 344 345 346 < 347 > 348 349 350 351 352 353 .. 404 >> Следующая


\ return message;

)

Чтобы однозначно идентифицировать XML-элементы в создаваемом описании web-службы, необходимо добавить пространство имен. Добавим атрибут wsbservice с пространство имен http://www.wrox.com/webservices в класс Service"!. Можно использовать любую другую строку, которая идентифицирует XML-элементы уникальным образом. Так, например, можно использовать дня этой цели URL-сеылку на страницу вашей компании. Причем такая web-ссылка совершенно не обязательно должна существовать на самом деле; она просто используется для уникальной идентификации. Если вами используется пространство имен, которое основывается на web-адресе вашей компании, то почти наверняка можно гарантировать, что никакая другая компания не будет использовать то же пространство имен.

Если вы не задаете никакого пространства имен, то по умолчанию используется пространство имен http://tempuri.org. Для целей обучения это пространство нас
Web-службы

741

вполне устроит, однако никогда не следует устанавливать реально используемую web-службу с таким пространством имен.

2. В свете вышесказанного измените пример следующим образом:

[WebService (Namespace="http: //www.wrox.com/webservices*) I

public class Servicel : System.Web.Services.WebService {

3. Теперь можно откомпилировать проект.

Тестирование web-службы

Открыв файл Servicel.asmx в браузере (его можно запустить нз Visual Studio.NET с помощью пункта меню Debug | Start Without Debugging), вы получите перечень всех методов выбранной web-службы, как показано на рисунке справа. В данном случае, служба обладает только одним методом —

ReverseStriug() ¦

Wib Scty-.z-s- - Мнл-мкЛ Г п. crises Екркнс4

Г> ?4 jjw !иы ДО

Tj ***¦ jllrt

Servicel

Tfte following GUi'Hioni jr# Гог « fcrrti*l dtfntioc, pl««ia rtvie* Sorvlce P»«f rlptton.

• acmicSiriMi

¦L

J 2Г1

| Jafel

y. Ld. jm ________________. Ц

¦vna - * ¦ Д j) -ДI 3 !*- h Qir»M (>" J И 'i| (J '6 "" .

RevtneString nrt

T* UtV, Curt At Тл-г+iV 1иЛ:'

r4UI(M f

ГЬа Мы») it t unvjU S(U* rtcu*st ms? r*mr,i». ГТч iMwfl M M fc* rtfUtttf щ^п ьСГиМ

»Ao-

нах *T7?/t,i

iDUtlNl ^

t?-j.«M-Tfpai НММ1“чМ

OMirL?-U4^bi lM|ih

SU7Miioa( rkUr;//vn.*r«.<H^^<,jjrrviir3/tmrsttii(4''

4(il»"l,D‘ 4KMU4-‘ni' *“T>

. • - •

•» Pan.-fdlu l»g uH^'btLr; f f»v». no*i th

(Mt*3 k)C) • trl»a</*UH4U - '

^/kmrMinnq} _ ¦ ‘

I XW/> ¦ " . ¦. .

UHafitwdfpf;

Ям* T ’ • " ’ -T I ! j 9ш№м~

Выбор показаной на экране ссылки на метод Reveraestrins повлечет за собой переход в диалог, позволяющий проводить тестирование web-службы. Диалог обладает полями, где можно редактировать все параметры, передаваемые данному методу,— в рассматриваемом случае, это единственный параметр.

На этой странице мы также получаем информацию о том, как выглядят SOAP-вызовы, поступающие от клиента, и ответы, отправляемые сервером. На рисунке слева приводится пример использования SOAP, HTTP GET и HTTP POST.

Нажав кнопку invoke, после того как в текстовое окно будет введен текст Hello web services!, мы получим от сервера результат, представленный на рисунке справа, Результат имеет тип string, и, как и предполагалось, это — инверсирование введенной строки.

'^Шг- tVr.u I пг.:,;о| ana:. игггшЧичЛп И«#г 4rf*Jk: S

• tr- [A в—

[1 * rtif

:***¦: И

<Vxjnl v0.'iiie^*‘3.D“ ¦РсикИдиЧпНЗ’ T>

titrwvj Ji-»s:*^hu1p://wv,iij.»4'roH.cam/*4ob.xeni1c<i*‘>!i0cIvr*s heW

.J
742

Глава 25

Реализация програнны-клиента

Тестовый вариант работает, и теперь создадим Windows-клиента, который сможет воспользоваться этой web-службой. Клиент должен создать SOAP-сообщение, которое будет отправлено по HTTP-каналу. Это совсем не обязательно выполнять нам самим. Класс system,web.services.protocols.soapHttpciientProtocoi выполняет всю эту работу скрытно от нас.

Практикум: создание клиентского приложения Windows

?

'jre*** Ttivn I«ЧЙНт I«iU
Ca ^bwiC++Pttiects О 5*4» *td 0<sp«ct/i4r* Project* S3 m foei *
Оф» Lbiry Vftidms CortralUbrary
- ilj Qthe PreiKEi ~J tt Mi »jdo % Ф
ASP.Z^TW^b W-REFWtb ftpf&atspl Wvict WA<« rr J)

jA р>р]ркК Jcr trjuftrq s t^-r r*u tm*

[pc b&TC j P; чДсдпС #№«fc *

fiddly-SaWiw:- & -"«o** Saljtoo

ITiHd vU it>4 С f (VMr

Ж



I

3. Добавьте web-ссылку, воспользовавшись пунктом меню Project | Add Web Reference, и выберите гиперссылку Web References on Local Service, чтобы перейти к предварительно

1. Создайте новый проект C# — приложение Windows (см. рис. слева).

2. Добавьте в форму два текстовых окна и кнопку, как показано

на рисунке ниже. Обработчик события “щелчок на кнопке” будет вызывать web-службу.

Servicel

Ть* Ч-шЦ №r#b«it шьм-ЫЪгЛ. fQf « /#№*** ei**» л».*. гм ificriSJL&ittliaiM

* 1№№Ш№1

созданной web-службе. Теперь, до того как вы нажмете кнопку Add Reference (см. рис. слева), вы можете просматривать контракт и документацию. Вместо того, чтобы использовать браузер, вы также можете непосредственно ввести URL asmx-файла.

Как это работает
Предыдущая << 1 .. 341 342 343 344 345 346 < 347 > 348 349 350 351 352 353 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.