看了很多资料,大致了解了service broker的工作步骤
begin dialog
send message
recieve message但有些细节还是不太清楚,
begin dialog需要数据库服务启动的时候就启动吗?
如果需要,该怎么做?send message是不是一般都封装在一个存储过程里面?
如果不是,那怎么通过ado.net来操作如何让recveie message一直运行,等待消息到达

解决方案 »

  1.   

    http://blog.163.com/owx8012@126/blog/static/38446246201042844215227/不晓得有没有帮助  没用过这个
      

  2.   

    service broker是消息监控,启动broker服务就可以。
      

  3.   


    启动broker就行。
    基础步骤详见 http://technet.microsoft.com/zh-cn/library/bb839489(it-it,SQL.90).aspx这个功能一直是比较边缘化的,
    很多地方在使用中都会在权衡后,启用service broker 功能。
    维护起来也是比较麻烦。LZ可以参考一下. 
      

  4.   


    更正一下是弃用service broker功能。
      

  5.   


    谢谢两位的回复,
    我在网上看了几个例子,就是把begin dialog 和send message 封装在一个存储过程里面,然后在C#直接调用这个存储过程,
    你们的意思是建立好了这个service broker后,要用的时候直接send message就行了?那这个begin dialog倒低是在那里运行的?
    还有,你们用过吗?我现在的需求就是总部服务器需要接收30几家分公司的数据,本来想用发布订阅的,但是感觉不太灵活,想用这个service borker不知道可行不?
    请两位给点意见。
      

  6.   

    谢谢,这上面写的都是msdn上面的内容,我已经看过了好几次。
      

  7.   

    刚仔细看了一下,send message 还要一个UNIQUEIDENTIFIER类型的名柄,而这个句柄是由begin dialog提供的,所以得每次send message 之前都要调用一下begin dialog 
    不知道这样理解对不对?