如何在自定义管道中设置 BTS.Operation?
到目前为止,我只在 BizTalk 应用程序中使用编排,并且到目前为止它运行良好。但现在我想将一些不必要的编排转换为纯粹的消息路由,以获得更好的性能。
我有一个只有一种方法的 WCF 服务,并且工作正常,因为我可以将 BtsActionMapping 仅设置为该单一方法。但我获得的第二个 WCF 服务有两种方法,现在 BizTalk 不知道如何路由我的消息。我到处都读到您需要在自定义管道中设置 BTS.Operation 才能使其正常工作。但我已经到处搜索有关如何执行此操作的教程或示例。
我一直在尝试实现 IBaseComponent、IComponentUI、IComponent 和 IPersistPropertyBag 接口来执行此操作。我的方向是正确的还是偏离的?谁能给我举一个例子或者更好的例子来告诉我如何做到这一点?
Up until now I've only been using orchestrations in my BizTalk application and it's been working fine so far. But now I want to convert some of the unnecessary orchestrations to pure message routing instead in order to get better performance.
I've got a WCF service with only one method and that works fine because I can set the BtsActionMapping to only that single method. But the second WCF service I've got has two methods and now BizTalk doesn't know how to route my message. I've read everywhere that you need to set BTS.Operation in a custom pipeline to get it to work. But I've searched all over the place for a tutorial or example on how to do this.
I've been trying to implement the IBaseComponent, IComponentUI, IComponent and IPersistPropertyBag interfaces to do this. Am I going in the right direction or I'm I way off? Can anyone point me to an example or better yet show me how to do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
开始编写自定义管道组件的最简单方法是使用 BizTalk Server 管道组件向导;它将为您生成所有样板文件。我还有几个自定义管道组件,您可以用作示例,其中一些非常接近您需要的组件(即仅设置自定义消息属性的组件)可以看到 此处。
至于设置属性,您需要做的就是调用 message.Context.Write/Promote 并传入属性的命名空间和名称,在本例中这些将是“http://schemas.microsoft.com/BizTalk/2003/system-properties" 和“操作”。
The easiest way to get started writing a custom pipeline component is to use the BizTalk Server Pipeline Component Wizard; it will generate all the boilerplate for you. I've also got several custom pipeline components you can use as an example, a few that are very close to what you need (i.e. a component that just sets a custom message property) can be seen here.
As for setting the property, all you need to do is call message.Context.Write/Promote and pass in the namespace and name of the property, in this case those would be "http://schemas.microsoft.com/BizTalk/2003/system-properties" and "Operation" respectively.