我是新来WF4。我想要做的是将WF4状态机作为WCF服务公开。我创建了状态机。我如何执行转换触发器并使用WCF更改状态。 http://channel9.msdn.com/Shows/Workflow-TV/endpointtv-WF4-State-Machine-Hands-On-Lab-Exercise-2。这是我用来创建状态机的教程。如何承载WF4状态机作为一个WCF服务
0
A
回答
2
我写了一个示例,演示如何在State Machine Security Door做到这一点。基本上你只需在转换中使用Send/ReceiveReply对。
0
如果妳不想要发送和接收活动的有可能与一些工作。发送和接收活动可能很难写入做相关工作的最终客户。 另一方面,如果客户端有一个通用入口,那么客户端不需要更新服务引用,而只需要一个合同定义就会更好。
我们删除了所有相关和创建一个通用的Web服务是重新路由到特定xamlx工作流程,但不使用发送/接收活动。相反,我们在xamlx工作流程中使用书签。 因此,我们创建了一个自己的活动来接收自定义页面流数据和另一个将数据发送回实例的活动。我们遇到的唯一问题。
public interface IWorkflowService
{
#region State Machine/Pageflow Operations
[OperationContract]
IPageflowData Start(IPageflowData pageflowData);
[OperationContract(Name = "StartWithInputs")]
IPageflowData Start(IPageflowData pageflowData, IDictionary<string, object> inputs);
[OperationContract]
IPageflowData Resume(PageflowCommand command, IPageflowData pageflowData);
[OperationContract(Name = "ResumeWithExecuteCommand")]
IPageflowData Resume(string commandName, IPageflowData pageflowData);
[OperationContract]
IPageflowData ResumeTo(string stepName, IPageflowData pageflowData);
#endregion
这是通过动态端点作为称为WorkflowCreationEndpoint实施IworkflowCreation合同WF样品中可用的组合。
[ServiceContract(Name = "IWorkflowCreation")]
public interface IWorkflowCreation
{
[OperationContract(Name = "Create")]
Guid Create(IDictionary<string, object> inputs);
[OperationContract(Name = "CreateWithInstanceId", IsOneWay = true)]
void CreateWithInstanceId(Guid instanceId, IDictionary<string, object> inputs);
[OperationContract(Name = "ResumeBookmark")]
void ResumeBookmark(Guid instanceId, string bookmarkName, object bookmarkValue);
}
相关问题
- 1. 承载一个WCF服务
- 2. 作为一个WCF服务承载服务
- 3. 如何承载WCF服务
- 4. WF4状态机+书签
- 5. WCF服务 - 状态
- 6. 不能承载WCF服务
- 7. WCF有状态服务
- 8. 如何从IIS7中承载的另一个WCF服务评估Windows服务托管的WCF服务?
- 9. 使用IIS7中承载的另一个WCF服务的WCF服务
- 10. 如何承载2个WCF服务1个ServiceHost的
- 11. WF4状态机重新托管:FinalState
- 12. 如何实现可以承载其他wcf服务的wcf服务?
- 13. 如何使一个WCF服务成为另一个WCF服务的客户端?
- 14. 如何维护WCF服务中的每个客户端状态?
- 15. WCF服务继承
- 16. WCF主机作为Windows服务故障
- 17. 在Azure上承载非WCF服务
- 18. WCF服务,在WCF SVC主机的工作,不工作作为Windows服务
- 19. 使用WCF服务访问承载WCF服务的Windows服务中的数据
- 20. 无状态服务器如何工作?
- 21. 无状态的WCF服务侦听器在同一个端口
- 22. WCF服务出现故障状态
- 23. C#WCF服务获取状态代码
- 24. WCF REST服务和状态轮询
- 25. 有状态的WCF Web服务
- 26. 如何在另一个WCF服务中托管WCF服务?
- 27. 如何在互联网上承载WCF双工服务
- 28. 如何承载WCF服务从局域网外呼叫
- 29. 如何在IIS上承载wcf路由服务?
- 30. WCF服务如何工作?
感谢您的指导。我有一个关于你的样本的问题。是否有理由将该服务放入Web项目中?我们使用websinc(http://www.frozenmountain.com/websync/)服务器从silverlight调用服务。 – 2012-02-16 04:56:44
XAMLX文件必须托管在Web项目中,或者您可以使用WorkflowServiceHost自行托管它们。 – 2012-02-23 19:16:10
所以,你所说的是我们不需要像websync那样使用单独的服务器来使用Silverlight的WF服务。谢谢您的帮助。 – 2012-02-23 19:23:56