【问题标题】:What would cause a RedirectionException in a Windows Workflow Service?什么会导致 Windows 工作流服务中的 RedirectionException?
【发布时间】:2012-03-18 03:44:56
【问题描述】:

工作流服务主机抛出以下类型的 RedirectionException 的根本原因是什么:

System.ServiceModel.Channels.RedirectionException:请求的资源已移动到以下位置之一: http://blah.mydomain.com/MyWorkflowService.svc 在 System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult 结果) 在 System.ServiceModel.Activities.Dispatcher.ControlOperationInvoker.InvokeEnd(对象实例,对象 []& 输出,IAsyncResult 结果) 在 System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeEnd(MessageRpc& rpc) 在 System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage7(MessageRpc& rpc) 在 System.ServiceModel.Dispatcher.MessageRpc.Process(布尔 isOperationContextSet)

RedirectionException 的文档在 WCF 方面是通用的,我知道它的用途,但我不确定是什么条件触发了工作流服务主机本身抛出它,而且似乎没有任何文档就可以了。

【问题讨论】:

    标签: .net wcf workflow-foundation-4 workflowservice


    【解决方案1】:

    我认为我从未见过这种情况,但根据 Reflector 的说法,这是在无法锁定 WF 实例时引发的 InstanceLockedException 的结果。这可能是因为另一个 WorkflowServiceHost 已锁定并加载它,或者是因为实例存储数据库中的某些不一致。

    【讨论】:

    • 谢谢,我太懒了,不想拆卸/搜索它。面对这些问题抛出奇怪的异常。在我的特定情况下,我在服务器场上运行,这可能是由于在 ServerA 上进行的长时间运行操作以及对同一 WF 服务的二次调用进入 ServerB。因此,在这种情况下,ServerB 必须在获取锁时超时并抛出 RedirectionException 试图告诉客户端转到 ServerA。
    • 是的,这听起来很合理。唯一的问题是客户端通常不能这样做:-(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多