Receive Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
En aktivitet som tar emot ett meddelande.
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
- Arv
- Attribut
Exempel
I följande exempel visas hur du skapar en Receive aktivitet och lägger till den i ett arbetsflöde i kod.
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
};
I följande exempel visas hur du skapar en Receive aktivitet och lägger till den i en arbetsflödestjänst i 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>
Kommentarer
Aktiviteten Receive kan ta emot ett enskilt objekt eller flera objekt beroende på vilken typ av mottagningsinnehåll som används.
Varning
När ett arbetsflöde innehåller flera Receive aktiviteter med samma åtgärdsnamn CorrelatesOn måste egenskapen anges till samma uppsättning korrelationsfrågor.
Konstruktorer
| Name | Description |
|---|---|
| Receive() |
Initierar en ny instans av Receive klassen. |
Egenskaper
| Name | Description |
|---|---|
| Action |
Hämtar eller anger värdet för åtgärdsrubriken för meddelandet. |
| CacheId |
Hämtar identifieraren för cachen som är unik inom arbetsflödesdefinitionens omfång. (Ärvd från Activity) |
| CanCreateInstance |
Hämtar eller anger ett värde som anger om en ny arbetsflödesinstans skapas för att bearbeta meddelandet om meddelandet inte korrelerar med en befintlig arbetsflödesinstans. |
| Constraints |
Hämtar en samling Constraint aktiviteter som kan konfigureras för att tillhandahålla validering för Activity. (Ärvd från Activity) |
| Content |
Hämtar eller ställer in data som ska tas emot. Innehållet kan vara antingen en ReceiveMessageContent eller en ReceiveParametersContent. |
| CorrelatesOn |
Hämtar eller anger den MessageQuerySet som används för att köra frågor mot meddelandet för att extrahera korrelationsdata. |
| CorrelatesWith |
Hämtar eller anger ett korrelationshandtag som används för att dirigera meddelandet till rätt arbetsflödesinstans. |
| CorrelationInitializers |
Hämtar en samling korrelationsinitiatorer som initierar frågebaserade korrelationer, kontext, motringningskontext eller korrelationer för begärandesvar med en Send aktivitetskörning. |
| DisplayName |
Hämtar eller anger ett valfritt eget namn som används för felsökning, validering, undantagshantering och spårning. (Ärvd från Activity) |
| Id |
Hämtar en identifierare som är unik i arbetsflödesdefinitionens omfång. (Ärvd från Activity) |
| Implementation |
Hämtar eller anger ombudet som returnerar en Activity som innehåller körningslogik. (Ärvd från Activity) |
| ImplementationVersion |
Hämtar eller anger den version av implementeringen som används. (Ärvd från Activity) |
| KnownTypes |
Hämtar en samling kända typer för åtgärden. |
| OperationName |
Hämtar eller anger namnet på åtgärden som implementeras av Receive. |
| ProtectionLevel |
Hämtar eller anger ett värde som anger skyddsnivån för åtgärden. |
| SerializerOption |
Hämtar eller anger ett värde som anger serialiseraren som ska användas för den här åtgärden. |
| ServiceContractName |
Hämtar eller anger namnet på tjänstkontraktet. |
Metoder
| Name | Description |
|---|---|
| CacheMetadata(ActivityMetadata) |
Skapar och validerar en beskrivning av aktivitetens argument, variabler, underordnade aktiviteter och aktivitetsdelegater. (Ärvd från Activity) |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FromOperationDescription(OperationDescription) |
Returnerar mottagningsaktiviteten från beskrivningen av den angivna kontraktsåtgärden. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Genererar en händelse när du skapar en dynamisk uppdateringskarta. (Ärvd från Activity) |
| ShouldSerializeCorrelatesOn() |
Returnerar ett värde som anger om egenskapen CorrelatesOn har ändrats från standardvärdet och ska serialiseras. |
| ShouldSerializeDisplayName() |
Anger om egenskapen DisplayName ska serialiseras. (Ärvd från Activity) |
| ToString() |
Returnerar en String som innehåller Id och DisplayName för Activity. (Ärvd från Activity) |