【问题标题】:Workflow Foundation 4 - DeclarativeServiceLibrary - Error while calling second ReceiveAndSendReply Sequence - VS2010工作流基础 4 - DeclarativeServiceLibrary - 调用第二个 ReceiveAndSendReply 序列时出错 - VS2010
【发布时间】:2010-03-13 06:04:24
【问题描述】:

我使用 VS2010 beta 2 创建了一个 DeclarativeServiceLibrary,
请检查此顺序服务的图像

以下是用于调用这两个活动的代码`int?数据 = 123;

        ServiceReference1.ServiceClient client1 = new ServiceReference1.ServiceClient();
        string result1 = client1.GetData(data);

        //This line shows error :(
        string result2 = client1.Operation1();

        Response.Write(result1 + " ::  ::" + result2);`  

client1.GetData 工作正常,但 client1.Operation1 显示以下错误。请告诉我如何解决此问题。

服务的传入消息没有附加上下文,并且当前操作未标记为“CanCreateInstance = true”。为了与此服务通信,请检查传入绑定是否支持上下文协议并已初始化有效的上下文。

【问题讨论】:

    标签: .net wcf workflow-foundation-4 asp.net-4.0


    【解决方案1】:

    您需要设置某种形式的关联,才能将第二条消息放入同一个工作流服务实例。有几种方法可以做到这一点,一种是使用关联绑定之一的上下文关联,例如 wsHttpContextBinding,一种是请求关联,您可以根据消息中的一些常见数据执行相同的操作。最后一个更灵活,但这意味着您需要一些独特的数据,例如订单号,以便与每个请求一起发送。

    Here 是一篇描述如何使用消息关联的博文。

    在 UI 中,使用 CorrelationInitializer 设置与第一个 Receive 活动的相关性,并将 CorrelatesOn 与第二个 Receive 活动一起使用。

    【讨论】:

    • 嗨莫里斯,感谢您的链接,但我不知道在哪里编写该代码。请让我知道是否有任何可用的示例。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-07
    相关资源
    最近更新 更多