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

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 358 359 360 361 362 363 < 364 > 365 366 367 368 369 370 .. 404 >> Следующая


Модель, которой мы собираемся воспользоваться, состоит нз нескольких надписей, располагающихся вверху, в которых содержится вопрос и суммарное количество проголосовавших. Под указанными надписями располагается группа строк, в каждой из которых содержится текст ответа н количество набранных голосов

(вместе с процентным отношением), а также линейка, представляющая счетчик количества голосов в графическом режиме (см. рис. слева).

Все очень просто, за исключением одной маленькой загвоздки, которая заключается в том, что на момент разработки формы нам не известно общее количество голосующих. Можно было

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

Result* Tool
,Wbrf disvcbpninrJ (iu-jr' ju piiin ^ Tntf rtiw Ш
C# 16 (t43S[ UM
C++ . 2 najj * : ¦ -
Java ‘ ‘Wsj’' KlIRlll
' JawSaipt - ii [ii*) 111
VuuJ ? 44 да

HemiJtL IlhiJ -jntjffl
0 Jlhink.Miciatoft.NE't'wiHiuci . j
¦ 1?I77
Yet 10,0 1SK] IHIIHIll
No 3K paxt 11» *
Not tue ' wi m\ мни “r'
776____________________________'____________________________________Практический пример

Это означает, что если в опросе оказывается большее количество ответов, то будет выведено большее количество строк и для их вывода форма изменит свои размеры.

Web-служба для проведения опроса

Дня реального сценария использования данного приложения представляется маловероятным, чтобы инструмент для просмотра результатов использовался на той же машине, на которой находится web-сайт. Напротив, с уверенностью можно утверждать, что он будет располагаться на другой машине, однако мы предполагаем, что соединение между этими двумя машинами поддерживает TCP/IP. Для того чтобы объекты могли взаимодействовать по каналу TCP/IP с использованием HTTP (что обычно предполагает работу в Интернете, поскольку интрансг-прнло-жения обычно используют работу с удаленными объектами), следует воспользоваться web-службами. Web-службы — это способ производить удаленные вызовы по различным сетям, включая Интернет, а также использовать SOAP- и XML-стандарты для управления соединением. При использовании .NET, в особенности Visual Studio.NET, реализовать web-службу не составляет никакого труда. При этом многое из происходящего будет скрыто от наших глаз, но само построение web-службы оказывается относительно простым.

Первое, что мы собираемся сделать,— это создать web-службу для проведения опросов; она будет создана в приложении ASP.NET PollW, поскольку обращения к этой web-службе будут происходить из страниц нашего web-сайта. В web-службе будут предусмотрены три web-метода, доступ к которым может осуществляться через Интернет:

? Answerg(). Возвращает массив строк, в котором содержится текст всех ответов.

? votesO. Возвращает массив целых, в котором содержатся счетчики голосов для каждого из ответов.

? Question (). Возвращает строку, содержащую вопрос текущего опроса.

Теоретически можно сделать эти методы доступными через web, описав их в классе Poll, однако, чтобы не смешивать методы, доступ к которым осуществляется через Интернет, с нашим бизнес-объектом, мы создадим новый класс, где будут находиться эти web-методы, которые, в свою очередь, используют методы, описанные в уже существующем классе poll. В подходе, обеспечивающем полный

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

Все, что требуется для создания Web-службы в Visual Studio.NET,— это воспользоваться пунктом Add Web Service меню Project, позволяющим добавить web-службу в проект poiiw (web-приложение). Далее следует ввести имя файла web-службы; это та страница, которая будет предоставлять наши методы. Web-службами используются файлы с расширением .авшх, хотя их структура и содержание почти не отличаются от файлов с расширением .aspx (см. рис. слева).
Практический пример 1 — iveb-сайт для проведения опросов

777

После того создання файла с расширением .asmx можно обнаружить, что кроме него создан еще один файл results.aemx.es с кодом поддержки. Именно в нем будет храниться код, реализующий web-методы. Если вы прокрутите файл results.aamx.es вниз, то ближе к его концу вы обнаружите образец web-метода с комментариями:

П ОБРАЗЕЦ WEB-СЛУХБЫ

Н Образец службы HelloWorldO осуществляет возврат строки Hello World II Для создания web-службы уберите знаки комментария из следующих строк, // затек сохраните проект и постройте его // Для тестирования web-службы нажмите F5

U

П [webmethod]

II public string HelloWorldO

И (

11 return 'Hello World*;

// >

Из приведенного выше примера видно, что все, что требуется для создания web-метода,— это включить атрибут - [webmethod] - непосредственно перед описанием самого метода. Далее приводится код web-метода Questiono:
Предыдущая << 1 .. 358 359 360 361 362 363 < 364 > 365 366 367 368 369 370 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

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

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

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

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