WF4 Workflow Service:SendParameters和ReceiveParameters
Posted on 2009-12-11 21:29 生鱼片 阅读(2434) 评论(4) 编辑 收藏 举报本文主要介绍如何使用SendParameters和ReceiveParameters的使用,这两个活动允许你在调用服务的时候携带多个参数。
下面的例子将通过使用SendParameters和ReceiveParameters将参数从客户端传到服务端,确认后给客户端发送回复。
1.服务端工作流ServiceWF流程设置如下图:
工作流变量如下:
Name |
Type |
Scope |
Default |
servicemsg |
String |
Sequence |
|
para |
String |
Sequence |
|
使用WorkflowServiceHost宿主工作流如下:
class Program
{
static void
{
WorkflowService service = new WorkflowService
{
Name = "CaryService",
Body = new cary.ServiceWF()
};
Uri address = new Uri("http://localhost:8080/CaryWFServices");
WorkflowServiceHost host = new WorkflowServiceHost(service, address);
try
{
Console.WriteLine("Opening service...");
host.Open();
Console.WriteLine("Service is listening on {0}...", address);
Console.WriteLine("To terminate press ENTER");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine("Service terminated with exception {0}", ex.ToString());
}
finally
{
host.Close();
}
}
}
2.客户端工作流ClientWF流程设置如下图:
工作流变量如下:
Name |
Type |
Scope |
Default |
Clientmsg |
String |
Sequence |
“I am a client Message |
Result |
String |
Sequence |
|
客户端调用程序如下:
class Program
{
static void
{
try
{
WorkflowInvoker.Invoke(new cary.ClientWF());
Console.WriteLine("Workflow completed successfully.");
}
catch (Exception e)
{
Console.WriteLine("Workflow completed with {0}: {1}.", e.GetType().FullName, e.Message); }
Console.WriteLine("To exit press ENTER.");
Console.ReadLine();
}
}
3.结果如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器