Создание веб-службы с помощью Visual C# .NET

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

Исходная версия продукта: Visual C# .NET
Исходный номер базы знаний: 308359

Требования

В следующем списке описаны рекомендуемые оборудование, программное обеспечение, навыки и знания, которые вам нужны:

  • Microsoft Windows
  • Сервер сведений о Интернете
  • Visual Studio .NET

В этой статье предполагается, что вы знакомы с разделом Использование интегрированной среды разработки Visual Studio .NET.

Создание веб-службы ASMX

  1. Откройте Visual Studio .NET.

  2. В меню Файл выберите Создать , а затем — Проект. В разделе Типы проектов выберите Проекты Visual C#. Затем выберите ASP.NET веб-служба в разделе Шаблоны. Введите MathService в текстовом поле Расположение , чтобы изменить имя по умолчанию (WebService1) на MathService.

  3. Измените имя веб-службы по умолчанию, созданной из Service1.asmx , на MathService.asmx.

  4. Выберите Щелкните, чтобы переключиться в представление кода в среде конструктора.

  5. Определите методы, которые инкапсулируют функциональность службы. Каждый метод, который будет предоставляться из службы, должен быть помечен атрибутом WebMethod перед ним. Без этого атрибута метод не будет предоставляться из службы.

    Примечание.

    Атрибут требуется WebMethod не для каждого метода. Полезно скрыть некоторые сведения о реализации, вызываемые методами общедоступной веб-службы, или для случая, WebService когда класс также используется в локальных приложениях. Локальное приложение может использовать любой открытый класс, но только WebMethod методы будут доступны удаленно как веб-службы.

    Добавьте следующий метод в MathServices созданный класс:

    [WebMethod]
    public int Add(int a, int b)
    {
      return(a + b);
    }
    [WebMethod]
    public System.Single Subtract(System.Single A, System.Single B)
    {
      return (A - B);
    }
    [WebMethod]
    public System.Single Multiply(System.Single A, System.Single B)
    {
      return A * B;
    }
    [WebMethod]
    public System.Single Divide(System.Single A, System.Single B)
    {
      if(B == 0) return -1;
      return Convert.ToSingle(A / B);
    }
    
  6. Выберите Сборка в меню Сборка , чтобы создать веб-службу.

  7. Перейдите на страницу веб-службы MathService.asmx , чтобы протестировать веб-службу. Если вы задали локальный компьютер для размещения страницы, URL-адрес будет равен http://localhost/MathService/MathService.asmx.

Среда выполнения ASP.NET возвращает страницу справки веб-службы, описывающую веб-службу. На этой странице также можно протестировать различные методы веб-службы.

Использование веб-службы

  1. Откройте Visual Studio .NET.

  2. В разделе Типы проектов выберите Проекты Visual C#, а затем выберите Консольное приложение в разделе Шаблоны.

  3. Добавьте ссылку на веб-службу MathService в новое консольное приложение.

    На этом шаге создается класс прокси-сервера на клиентском компьютере. После существования прокси-класса можно создавать объекты на основе класса . Каждый вызов метода, который выполняется с объектом , затем отправляется на универсальный идентификатор ресурса (URI) веб-службы (обычно в виде запроса SOAP).

    1. В меню Проект выберите Добавить веб-ссылку.
    2. В диалоговом окне Добавление веб-ссылки введите URL-адрес веб-службы в текстовом поле Адрес и нажмите клавишу ВВОД. Если на локальном компьютере размещена веб-служба, URL-адрес будет равен http://localhost/MathService/MathService.asmx.
    3. Выберите команду Добавить ссылку. Кроме того, можно ввести URL-адрес файла обнаружения (MathService.vsdisco) или выбрать веб-ссылки на локальном веб-сервере в области слева, чтобы выбрать службу MathService из списка.
    4. Разверните раздел Веб-ссылки Обозреватель решений и обратите внимание на используемое пространство имен.
  4. Создайте экземпляр созданного прокси-объекта. Поместите следующий код в функцию с именем Main:

    localhost.Service1 myMathService = new localhost.Service1();
    
  5. Вызовите метод для объекта-посредника, созданного на предыдущем шаге, следующим образом:

    Console.Write("2 + 4 = {0}", myMathService.Add(2,4));
    
  6. Выберите Сборка в меню Сборка , чтобы создать консольное приложение.

  7. Выберите Пуск в меню Отладка , чтобы протестировать приложение.

  8. Закройте и сохраните проект.

Ссылки

Дополнительные сведения см. в разделе Программирование веб-служб с помощью веб-служб справки по Visual Studio .NET или в разделе ASP.NET веб-службы и клиенты веб-служб ASP.NET в руководстве разработчика по платформа .NET Framework.

Дополнительные сведения см. на следующих веб-сайтах: