Определение контракта службы

  1. Откройте Visual Studio 2012 от лица администратора, щелкнув программу правой кнопкой мыши в меню Пуск и выбрав команду Запуск от имени администратора.
  2. Создайте проект библиотеки службы WCF, последовательно выбрав в меню Файл пункты Создать и Проект. В диалоговом окне Создание проекта с левой стороны разверните Visual C# для проекта на языке C# или Другие языки и Visual Basic для проекта на языке Visual Basic. В выбранном языке выберите WCF, после чего в центре диалогового окна отобразится список шаблонов проекта. Выберите Библиотека службы WCF, затем введите данные GettingStartedLib в текстовом поле Имя и GettingStarted в текстовом поле Имя решения в нижней части диалогового окна.
  3. Visual Studio создаст проект, содержащий 3 файла: IService1.cs (или IService1.vb), Service1.cs (или Service1.vb) и App.config. В файле IService1 содержится контракт службы по умолчанию. В файле Service1 содержится контракт службы, реализованный методми по умолчанию. В файле App.config содержатся настройки, необходимые для загрузки службы по умолчанию средством WCF Service Host в Visual Studio.
  4. Откройте файл IService1.cs или IService1.vb и удалите код в пределах объявления пространства имен, оставив при этом само объявление пространства имен. В пределах объявления пространства имен определите новый интерфейс с именем ICalculator, как показано в приведенном ниже примере кода.

// IService.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Runtime.Serialization;

using System.ServiceModel;

using System.Text;

namespace GettingStartedLib

{

[ServiceContract(Namespace = "http://Microsoft.ServiceModel.Samples")]

public interface ICalculator

{

[OperationContract]

double Add(double n1, double n2);

[OperationContract]

double Subtract(double n1, double n2);

[OperationContract]

double Multiply(double n1, double n2);

[OperationContract]

double Divide(double n1, double n2);

}

}

В этом контракте определен онлайн-калькулятор. Следует обратить внимание на то, что интерфейс ICalculator помечен атрибутом ServiceContractAttribute. Этот атрибут определяет пространство имен, которое используется для устранения неоднозначности имени контракта. Каждая операция калькулятора помечена атрибутом OperationContractAttribute.

Примечание
При использовании атрибутов для описания интерфейса, члена или класса в имени атрибута можно опускать часть «Attribute». Таким образом, ServiceContractAttribute изменится на [ServiceContract] в C# или на <ServiceContract> в Visual Basic.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: