Конструктор действия Receive
Конструктор действий получения используется для создания и настройки Receive действия. Действие Receive получает сообщение - либо встроенное, например Message, Stream или XElement, либо определяемое контрактом данных приложения, контрактом сообщений или классом XML, поддерживающим сериализацию.
Действие Receive
Действие Receive может получать один или несколько элементов в зависимости от используемого типа приема содержимого. Действие SendReply может быть привязано к действию Receive, которое получает сообщение в процессе обмена сообщениями по шаблону «запрос-ответ» на стороне службы.
Использование конструктора действия Receive
Доступ к конструктору действий получения в категории "Обмен сообщениями" панели элементов. Конструктор действий получения можно перетащить из панели элементов и удалить его в область конструктора рабочих процессов, где бы ни находились действия. При этом создается действие Receive со значением по умолчанию DisplayName для Receive. Его DisplayName можно изменить в заголовке конструктора действий получения или в поле DisplayName сетки свойств.
Чтобы создать SendReply действие и привязать его к выбранному Receive действию, щелкните правой кнопкой мыши конструктор действий Получения , щелкните элемент Create SendReply в контекстном меню, а конструктор SendReplyToReceive появится под конструктором получения . Действие SendReply отправляет ответное сообщение в процессе обмена сообщениями по шаблону «запрос-ответ» на стороне службы. Его можно настроить с помощью конструктора SendReplyToReceive .
Кроме того, конструктор шаблонов ReceiveAndSendReply в категории "Сообщения" панели элементов можно использовать для создания пары предварительно настроенных Receive и SendReply действий. Дополнительные сведения об использовании шаблона ReceiveAndSendReply и SendReplyToReceive см. в разделе ReceiveAndSendReply.
Свойства действия Receive
В следующей таблице показаны свойства Receive и описано их использование в конструкторе. Эти свойства можно изменить в сетке свойств или в области конструктора рабочих процессов. Свойство OperationName является единственным обязательным свойством.
Имя свойства | Обязательное поле | Использование |
---|---|---|
DisplayName | False | Указывает понятное имя действия Receive. Значение по умолчанию - Receive. Несмотря на то, что использовать значение, отличное от значения по умолчанию, для понятного имени DisplayName не требуется, его все же рекомендуется использовать. |
OperationName | Истина | Указывает имя операции службы, реализуемой этим действием Receive. Это свойство используется для создания значения по умолчанию для свойства Action , если свойство Action не задано явным образом. |
ServiceContractName | False | Задает имя контракта службы. Данное свойство используется для группирования операций служб в отдельные контракты служб. Все действия Receive, которые имеют одинаковое имя контракта ServiceContractName, группируются по этому контракту службы (тип порта WSDL). Значение по умолчанию — полное имя среды CLR действия верхнего уровня (root). |
Content | False | Указывает получаемое содержимое сообщения или параметра. Это может быть либо действие ReceiveMessageContent, либо действие ReceiveParametersContent. Измените это свойство, нажав кнопку с многоточием рядом с полем "Содержимое " в сетке свойств или нажав кнопку "Определить... " рядом с меткой "Содержимое " в области конструктора действий получения . Оба отображают диалоговое окно "Определение содержимого". Дополнительные сведения об использовании этого поля см. в разделе "Диалоговое окно определения содержимого". |
CorrelatesOn | False | Указывает корреляции между действиями Receive в операциях службы рабочего процесса с объектом MessageQuerySet. Нажмите кнопку с многоточием рядом со CorrelatesOn свойством в сетке свойств, чтобы открыть диалоговое окно "Определение Коррелесона". Дополнительные сведения об использовании этого диалогового окна см. в разделе "Диалоговое окно определения содержимого". |
CorrelatesWith | False | Задает метод CorrelationHandle, используемый для перенаправления сообщения в соответствующий экземпляр рабочего процесса. Нажмите кнопку с многоточием рядом со CorrelatesWith свойством в сетке свойств, чтобы открыть диалоговое окно редактора выражений. Дополнительные сведения об использовании этого диалогового окна см. в разделе "Практическое руководство. Использование раздела редактора выражений". |
CorrelationInitializers | False | Указывает коллекцию объектов CorrelationInitializer, инициализирующих несколько объектов CorrelationHandle, которые настраивают это действие Receive в рамках рабочего процесса. Нажмите кнопку с многоточием рядом со CorrelationInitializers свойством в сетке свойств, чтобы открыть диалоговое окно "Добавить инициализаторы корреляции ". Дополнительные сведения об использовании этого поля см. в разделе "Добавление корреляцииInitializers" диалогового окна . |
CanCreateInstance | False | Указывает значение, которое определяет, может ли быть создан новый экземпляр рабочего процесса для обработки сообщения в случае, если сообщение не соответствует существующему экземпляру рабочего процесса. Если задано значение true, создается новый экземпляр рабочего процесса для обработки сообщения, если сообщение не сопоставляется с существующим экземпляром рабочего процесса. |
KnownTypes | False | Указывает коллекцию известных типов для операции службы, реализуемой этим действием Receive. Это свойство должно использоваться вместе со свойством SerializerOption, установленным в значение DataContractSerializer. Не учитывается, если используется XmlSerializer. Нажмите кнопку с многоточием рядом с полем KnownTypes в сетке свойств, чтобы отобразить диалоговое окно редактора коллекции типов, с помощью которого можно добавить соответствующие типы. Дополнительные сведения об использовании этого поля см. в диалоговом окне "Редактор коллекции типов". |
ProtectionLevel | False | Задает ProtectionLevel для сообщения. 1. ProtectionLevel Означает только проверку подлинности. 2. ProtectionLevel Означает, что данные подписываются для обеспечения целостности передаваемых данных. 3. ProtectionLevel означает шифрование и подпись данных для обеспечения конфиденциальности и целостности передаваемых данных. |
SerializerOption | False | Указывает тип используемого сериализатора для операции службы, реализуемой действием Receive. Значение по умолчанию равно DataContractSerializer, при котором выполняется сериализация и десериализация экземпляра типа в XML-поток или документ, который использует переданный контракт данных. XmlSerializer также может быть использован в том случае, если необходим больший контроль над XML. |
Action | False | Указывает заголовок действия сообщения. Если оно не задано явным образом, значение по умолчанию равно: https://tempuri.org/{service contract namespace}/{service contract name}/{operation name} |