我一直在尝试使用以下适配器将StreamInsight与BizTalk连接: http://seroter.wordpress.com/2010/07/09/sending-streaminsight-events-to-biztalk-through-new-web-soaprest-adapter/#comment-11635
最后,他执行以下操作将查询绑定到适配器:
var allQuery = callTypeThreshold.ToQuery(
myApp,
"Threshold Events",
string.Empty,
typeof(WebOutputFactory),
webAdapterBizTalkConfig,
EventShape.Point,
StreamEventOrder.FullyOrdered);
现在,如果我没有弄错,这在StreamInsight 2.1中不再起作用,我不知道如何做到这一点。任何人都可以帮我吗? 提前谢谢!
答案 0 :(得分:2)
您可以将旧版适配器模型与较新的StreamInsight 2.1 API一起使用。要将输入适配器用作源,您需要使用Application.DefineStreamable()的重载。
所以你的代码看起来像这样:
var sourceStreamable = Application.DefineStreamable<TPayload>(
typeof(WebInputFactory),
webAdapterBizTalkConfig,
EventShape.Point,
AdvanceTimeSettings.IncreasingStartTime);
现在,如果您想将输出适配器用作接收器,则需要使用Application.DefineStreamableSink()的重载之一。
所以代码看起来像这样:
var sink = Application.DefineStreamableSink<TPayload>(
typeof(WebOutputFactory),
webAdapterBizTalkConfig,
EventShape.Point,
StreamEventOrder.FullyOrdered);
然后使用Bind()方法将您的流式传输绑定到接收器,然后运行Run()以启动该过程,您就可以了。