Поделиться через


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

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

Примечание.

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

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

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

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

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

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

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

    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 в действие последовательной службы.