Как создать службу рабочего процесса, которая использует существующий контракт службы

платформа .NET Framework 4.5 улучшена интеграция между веб-службами и рабочими процессами в виде разработки рабочих процессов на основе контракта. Средство разработки рабочих процессов на основе контракта позволяет создать контракт в Code First. Затем это средство автоматически создает в области элементов шаблон действия для каждой операции в контракте.

Примечание.

Этот раздел содержит пошаговые инструкции по созданию службы рабочих процессов на основе контракта. Дополнительные сведения о разработке службы рабочих процессов для первого контракта см. в разделе "Разработка службы первого рабочего процесса контракта".

Создание проекта рабочего процесса

  1. В Visual Studio выберите последовательно Файл и Создать проект. Выберите узел WCF под узлом C# в дереве шаблонов и выберите шаблон приложения службы рабочих процессов WCF.

  2. Назовите новый проект ContractFirst и нажмите кнопку "ОК".

Создание контракта службы

  1. Щелкните проект правой кнопкой мыши в Обозреватель решений и выберите "Добавить", "Создать элемент".. Выберите узел кода слева и шаблон класса справа. Назовите новый класс IBookService и нажмите кнопку "ОК".

  2. В верхней части появившегося окна кода добавьте в System.ServiceModel инструкцию Using.

    using System.ServiceModel;  
    
  3. Измените образец определения класса на следующее определение интерфейса.

    [ServiceContract]  
        public interface IBookService  
        {  
            [OperationContract]  
            void Buy(string bookName);  
    
            [OperationContract(IsOneWay=true)]  
            void Checkout();  
        }  
    
  4. Создайте проект, нажав клавиши CTRL+SHIFT+B.

Импорт контракта службы

  1. Щелкните проект правой кнопкой мыши в Обозреватель решений и выберите "Импорт контракта службы". В разделе "Текущий проект"> откройте все вложенные узлы и выберите IBookService.< Щелкните OK.

  2. Откроется диалоговое окно с сообщением, что операция была завершена успешно, а созданные действия появятся в области элементов после сборки проекта. Щелкните OK.

  3. Создайте проект, нажав клавиши CTRL+SHIFT+B, чтобы импортированные действия отображались на панели элементов.

  4. В Обозреватель решений откройте Service1.xamlx. Служба рабочего процесса появится в конструкторе.

  5. Выберите действие "Последовательность". В окно свойств нажмите кнопку ... в свойстве ImplementedContract. В появившемся окне редактора коллекции типов щелкните раскрывающийся список "Тип" и выберите запись "Обзор типов". В диалоговом окне "Обзор и выбор типа .NET" в разделе< "Текущий проект>" откройте все вложенные узлы и выберите IBookService. Щелкните OK. В диалоговом окне редактора коллекции типов нажмите кнопку "ОК".

  6. Выберите и удалите действия ReceiveRequest и SendResponse .

  7. На панели элементов перетащите Buy_ReceiveAndSendReply и действие Checkout_Receive в действие последовательной службы.