Receive Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Aktivita, která obdrží zprávu.
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
- Dědičnost
- Atributy
Příklady
Následující příklad ukazuje, jak vytvořit Receive aktivitu a přidat ji do pracovního postupu v kódu.
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
};
Následující příklad ukazuje, jak vytvořit Receive aktivitu a přidat ji do služby pracovního postupu v 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>
Poznámky
Aktivita Receive může přijímat jednu položku nebo více položek v závislosti na typu použitého obsahu příjmu.
Výstraha
Pokud pracovní postup obsahuje více Receive aktivit se stejným názvem operace, CorrelatesOn musí být vlastnost nastavena na stejnou sadu korelačních dotazů.
Konstruktory
| Name | Description |
|---|---|
| Receive() |
Inicializuje novou instanci Receive třídy. |
Vlastnosti
| Name | Description |
|---|---|
| Action |
Získá nebo nastaví hodnotu záhlaví akce zprávy. |
| CacheId |
Získá identifikátor mezipaměti, který je jedinečný v rámci oboru definice pracovního postupu. (Zděděno od Activity) |
| CanCreateInstance |
Získá nebo nastaví hodnotu, která označuje, zda je vytvořena nová instance pracovního postupu pro zpracování zprávy, pokud zpráva neodpovídá existující instanci pracovního postupu. |
| Constraints |
Získá kolekci Constraint aktivit, které lze nakonfigurovat pro zajištění ověření pro Activity. (Zděděno od Activity) |
| Content |
Získá nebo nastaví data pro příjem. Obsah může být buď aReceiveMessageContent, nebo .ReceiveParametersContent |
| CorrelatesOn |
Získá nebo nastaví MessageQuerySet použitý dotaz na zprávu k extrakci korelačních dat. |
| CorrelatesWith |
Získá nebo nastaví korelační popisovač, který se používá ke směrování zprávy do příslušné instance pracovního postupu. |
| CorrelationInitializers |
Získá kolekci inicializátorů korelace, které inicializují dotazování, kontext, kontext zpětného volání nebo korelace odpovědí na žádost s spuštěním Send aktivity. |
| DisplayName |
Získá nebo nastaví volitelný popisný název, který se používá pro ladění, ověřování, zpracování výjimek a sledování. (Zděděno od Activity) |
| Id |
Získá identifikátor, který je jedinečný v oboru definice pracovního postupu. (Zděděno od Activity) |
| Implementation |
Získá nebo nastaví delegáta, který vrací Activity , který obsahuje logiku spuštění. (Zděděno od Activity) |
| ImplementationVersion |
Získá nebo nastaví verzi použité implementace. (Zděděno od Activity) |
| KnownTypes |
Získá kolekci známých typů pro operaci. |
| OperationName |
Získá nebo nastaví název operace implementované Receive. |
| ProtectionLevel |
Získá nebo nastaví hodnotu, která označuje úroveň ochrany operace. |
| SerializerOption |
Získá nebo nastaví hodnotu, která určuje serializátor použít pro tuto operaci. |
| ServiceContractName |
Získá nebo nastaví název kontraktu služby. |
Metody
| Name | Description |
|---|---|
| CacheMetadata(ActivityMetadata) |
Vytvoří a ověří popis argumentů, proměnných, podřízených aktivit a delegátů aktivity. (Zděděno od Activity) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| FromOperationDescription(OperationDescription) |
Vrátí aktivitu příjmu z popisu dané operace kontraktu. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Vyvolá událost při vytváření mapy dynamické aktualizace. (Zděděno od Activity) |
| ShouldSerializeCorrelatesOn() |
Vrátí hodnotu, která určuje, zda CorrelatesOn se vlastnost změnila z výchozí hodnoty a měla by být serializována. |
| ShouldSerializeDisplayName() |
Určuje, zda DisplayName má být vlastnost serializována. (Zděděno od Activity) |
| ToString() |
String Vrátí hodnotu, která obsahuje Id hodnotu a DisplayName hodnotu Activity. (Zděděno od Activity) |