Receive Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Activité qui reçoit un message.
public ref class Receive sealed : System::Activities::Activity
[System.Windows.Markup.ContentProperty("Content")]
public sealed class Receive : System.Activities.Activity
[<System.Windows.Markup.ContentProperty("Content")>]
type Receive = class
inherit Activity
Public NotInheritable Class Receive
Inherits Activity
- Héritage
- Attributs
Exemples
L'exemple suivant indique comment créer une activité Receive et l'ajouter à un workflow dans le code.
Variable<string> message = new Variable<string> { Name = "message" };
Variable<string> echo = new Variable<string> { Name = "echo" };
Receive receiveString = new Receive
{
OperationName = "Echo",
ServiceContractName = "Echo",
CanCreateInstance = true,
//parameters for receive
Content = new ReceiveParametersContent
{
Parameters =
{
{"message", new OutArgument<string>(message)}
}
}
};
Sequence workflow = new Sequence()
{
Variables = { message, echo },
Activities =
{
receiveString,
new WriteLine
{
Text = new InArgument<string>(env =>("Message received: " + message.Get(env)))
},
new Assign<string>
{
Value = new InArgument<string>(env =>("<echo> " + message.Get(env))),
To = new OutArgument<string>(echo)
},
//parameters for reply
new SendReply
{
Request = receiveString,
Content = new SendParametersContent
{
Parameters =
{
{ "echo", new InArgument<string>(echo) }
},
}
},
new WriteLine
{
Text = new InArgument<string>(env =>("Message sent: " + echo.Get(env)))
},
},
};
service = new WorkflowService
{
Name = "Echo",
Body = workflow
};
L'exemple suivant indique comment créer une activité Receive et l'ajouter à un service de workflow en XAML.
<WorkflowService mc:Ignorable="sap" ConfigurationName="Service1" Name="Service1" mva:VisualBasic.Settings="Assembly references and imported namespaces serialized as XML namespaces" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/servicemodel" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="clr-namespace:Microsoft.VisualBasic;assembly=System" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:p="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:s1="clr-namespace:System;assembly=System" xmlns:s2="clr-namespace:System;assembly=System.Xml" xmlns:s3="clr-namespace:System;assembly=System.Core" xmlns:sad="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=System" xmlns:scg1="clr-namespace:System.Collections.Generic;assembly=System.ServiceModel" xmlns:scg2="clr-namespace:System.Collections.Generic;assembly=System.Core" xmlns:scg3="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:sd="clr-namespace:System.Data;assembly=System.Data" xmlns:sl="clr-namespace:System.Linq;assembly=System.Core" xmlns:ssa="clr-namespace:System.ServiceModel.Activities;assembly=System.ServiceModel.Activities" xmlns:st="clr-namespace:System.Text;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<p:Sequence sad:XamlDebuggerXmlReader.FileName="c:\Projects\WFServiceSnippets\WFServiceSnippets\Service1.xamlx" sap:VirtualizedContainerService.HintSize="277,644" mva:VisualBasic.Settings="Assembly references and imported namespaces serialized as XML namespaces">
<p:Sequence.Variables>
<p:Variable x:TypeArguments="CorrelationHandle" Name="__handle1" />
<p:Variable x:TypeArguments="x:String" Name="Message" />
<p:Variable x:TypeArguments="x:String" Name="Echo" />
</p:Sequence.Variables>
<sap:WorkflowViewStateService.ViewState>
<scg3:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
</scg3:Dictionary>
</sap:WorkflowViewStateService.ViewState>
<Receive x:Name="__ReferenceID0" CanCreateInstance="True" DisplayName="ReceiveString" sap:VirtualizedContainerService.HintSize="255,90" OperationName="Echo" ServiceContractName="Echo">
<Receive.CorrelationInitializers>
<RequestReplyCorrelationInitializer CorrelationHandle="[__handle1]" />
</Receive.CorrelationInitializers>
<ReceiveParametersContent>
<p:OutArgument x:TypeArguments="x:String" x:Key="message">[Message]</p:OutArgument>
</ReceiveParametersContent>
</Receive>
<p:WriteLine sap:VirtualizedContainerService.HintSize="255,61" Text="["Message received: " + Message]" />
<p:Assign sap:VirtualizedContainerService.HintSize="255,58">
<p:Assign.To>
<p:OutArgument x:TypeArguments="x:String">[Echo]</p:OutArgument>
</p:Assign.To>
<p:Assign.Value>
<p:InArgument x:TypeArguments="x:String">["<echo> " + Message]</p:InArgument>
</p:Assign.Value>
</p:Assign>
<SendReply Request="{x:Reference __ReferenceID0}" DisplayName="SendReply" sap:VirtualizedContainerService.HintSize="255,90">
<SendParametersContent>
<p:InArgument x:TypeArguments="x:String" x:Key="echo">[Echo]</p:InArgument>
</SendParametersContent>
</SendReply>
<p:WriteLine sap:VirtualizedContainerService.HintSize="255,61" Text="["Message sent: " + Echo]" />
</p:Sequence>
</WorkflowService>
Remarques
L'activité Receive peut recevoir un élément unique ou plusieurs éléments selon le type de contenu de réception utilisé.
Avertissement
Lorsqu'un workflow contient plusieurs activités Receive avec le même nom d'opération, la propriété CorrelatesOn doit être définie sur le même ensemble de requêtes de corrélation.
Constructeurs
Receive() |
Initialise une nouvelle instance de la classe Receive. |
Propriétés
Action |
Obtient ou définit la valeur de l'en-tête d'action du message. |
CacheId |
Obtient l'identificateur du cache qui est unique dans la portée de la définition de flux de travail. (Hérité de Activity) |
CanCreateInstance |
Obtient ou définit une valeur qui indique si une nouvelle instance de flux de travail est créée pour traiter le message si le message n'est pas corrélé à une instance de flux de travail existante. |
Constraints |
Obtient une collection d'activités Constraint qui peuvent être configurées afin de fournir la validation pour l'objet Activity. (Hérité de Activity) |
Content |
Obtient ou définit les données à recevoir. Le contenu peut être ReceiveMessageContent ou ReceiveParametersContent. |
CorrelatesOn |
Obtient ou définit le MessageQuerySet utilisé pour interroger le message afin d'extraire les données de corrélation. |
CorrelatesWith |
Obtient ou définit un gestionnaire de corrélation utilisé pour router le message à l'instance de flux de travail appropriée. |
CorrelationInitializers |
Obtient une collection d'initialiseurs de corrélation qui initialisent des corrélations basées sur une requête, de contexte, de contexte de rappel ou de demande-réponse avec une activité Send. |
DisplayName |
Obtient ou définit un nom convivial utilisé pour le débogage, la validation, la gestion des exceptions et le suivi. (Hérité de Activity) |
Id |
Obtient l'identificateur qui est unique dans la portée de la définition de flux de travail. (Hérité de Activity) |
Implementation |
Obtient ou définit le délégué qui retourne un objet Activity qui contient la logique d'exécution. (Hérité de Activity) |
ImplementationVersion |
Obtient ou définit la version de l'implémentation utilisée. (Hérité de Activity) |
KnownTypes |
Obtient une collection de types connus pour l'opération. |
OperationName |
Obtient ou définit le nom de l'opération implémentée par Receive. |
ProtectionLevel |
Obtient ou définit une valeur qui indique le niveau de protection pour l'opération. |
SerializerOption |
Obtient ou définit une valeur qui spécifie le sérialiseur à utiliser pour cette opération. |
ServiceContractName |
Obtient ou définit le nom du contrat de service. |
Méthodes
CacheMetadata(ActivityMetadata) |
Crée et valide une description des arguments, variables, activités enfants et délégués de l’activité. (Hérité de Activity) |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
FromOperationDescription(OperationDescription) |
Retourne l'activité de réception à partir de la description de l'opération de contrat donnée. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Déclenche un événement lors de la création d'une carte de mise à jour dynamique. (Hérité de Activity) |
ShouldSerializeCorrelatesOn() |
Retourne une valeur qui indique si la propriété CorrelatesOn utilise une autre valeur que sa valeur par défaut et doit être sérialisée. |
ShouldSerializeDisplayName() |
Indique si la propriété DisplayName doit être sérialisée. (Hérité de Activity) |
ToString() |
Retourne un objet String qui contient les propriétés Id et DisplayName de l'objet Activity. (Hérité de Activity) |