首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >工作流4服务并行生成(发送和接收)多个工作流服务

工作流4服务并行生成(发送和接收)多个工作流服务
EN

Stack Overflow用户
提问于 2012-03-28 18:24:20
回答 2查看 378关注 0票数 0

假设存在一个工作流服务。WF可能有多个实例(使用CanCreateInstance)。现在,假设存在WF,这是不同的(内容),但具有与WF相同的特性,为了使WF完成,它必须调用WF(动态确定的)次数(当然,每次都有不同的参数)。

伪工作流可以是:

代码语言:javascript
复制
Instance of WF-A:
    // WF is instantiated 
    // do some activities
    parallel-foreach (product in Products)
        Send & Receive to a different instance of WF-B with parameter product
    // do some activities
    // WF-A is done

唯一的问题是:你是如何实施这样一个计划的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-30 12:31:10

有几件事要注意;

在WF中调用服务有两种方法。

  • 的一种方法是使用发送-接收活动样式的消息传递,其中需要指定服务的地址(或配置端点)以及方法名称和参数(包括它们的名称)。
  • 另一种方式是使用服务引用。当使用这样的引用时,visual studio将为每个服务方法创建一个专用活动。这种方式似乎是一种本机方式,并使用WF活动抽象(如果可能的话使用这种方式)。

注意,以声明方式表示WF服务的.XAMLX文件将指向特定的服务引用活动,该活动最终被捆绑在XAMLX驻留的项目的dll中。

还请注意,生成的服务引用活动指向某些WCF配置客户端绑定。因为WF是WF的客户。

因此,您可以执行以下操作:

  1. 在WF中做您想做的任何事情--只需通过使用服务引用活动来使用WF。WF的主机
  2. 应该引用WF-A.XAMLX所在的程序集(这意味着主机将拥有其服务引用中的WF活动)。对于主机来说,XamlX本身是不够的。
  3. 将一个服务引用(与WF程序集中使用的名称空间相同)添加到WF主机中的WF,通过移除合同名称中客户端部分中的领先名称空间(IServiceB而不是IServiceB)来更改主机的客户端配置。

可以将最后一步替换为自己配置客户端绑定,但是使用服务引用(也可以更新)要容易得多。

票数 0
EN

Stack Overflow用户

发布于 2012-03-28 22:06:20

不确定您要求的是什么-您应该能够将一个序列活动放入一个ParallelForEach活动中,并将发送和接收活动放在序列中。

下面是一个关于如何使用ParallelForEach的示例:

http://msdn.microsoft.com/en-us/library/dd647810.aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9913472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档