代码之家  ›  专栏  ›  技术社区  ›  Sandeep Kumar M

工作流基础4——DeclarativeServiceLibrary -调用第二个接收和SDENESTREST序列时出错- VS2010

  •  1
  • Sandeep Kumar M  · 技术社区  · 16 年前

    我使用VS2010 Beta 2创建了一个DeclarativeServiceLibrary,
    请检查顺序服务的图像
    alt text http://i41.tinypic.com/2dif2jb.jpg

    下面是用来调用这两个活动的代码'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”。为了与此服务通信,请检查传入绑定是否支持上下文协议并已初始化有效的上下文。

    1 回复  |  直到 16 年前
        1
  •  2
  •   Maurice    16 年前

    您需要设置某种形式的关联才能将第二条消息获取到同一工作流服务实例中。有两种方法可以做到这一点,一种是使用请求关联的关联绑定(如wshttpcontextbinding)之一进行上下文关联,另一种是基于消息中的一些常见数据进行上下文关联。最后一个更灵活,但这意味着您需要一些唯一的数据,如订单号,与每个请求一起发送。

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

    在ui中,使用correlationinitializer设置与第一个接收活动的关联,并将correlateson与第二个接收活动一起使用。

    推荐文章