当使用Observable.FromEventPattern而不是Observable.FromEvent? [英] When to use Observable.FromEventPattern rather than Observable.FromEvent?

查看:1597
本文介绍了当使用Observable.FromEventPattern而不是Observable.FromEvent?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们已经有了一个客户叫开了一个TIBCO EMS队列并接线像这样的事件:

We've got a client calling off to a TIBCO EMS queue and are wiring up the events like this:

var msgConsumer = _session.CreateConsumer(responseQueue);
var response = Observable.FromEvent<EMSMessageHandler,EMSMessageEventArgs>
            (h => msgConsumer.MessageHandler += h, h => msgConsumer.MessageHandler -= h)
            .Where(arg => arg.Message.CorrelationID == message.MessageID);

当我称之为 response.Subscribe(...)我得到System.ArgumentException错误绑定到目标方法

When I call response.Subscribe(...) I get System.ArgumentException "Error binding to target method."

我可以把它与 Observable.FromEventPattern<工作; EMSMessageEventArgs>( msgConsumer的MessageHandler)但它有事件作为一个字符串,只是没有那么干净。

I can make it work with Observable.FromEventPattern<EMSMessageEventArgs>(msgConsumer, "MessageHandler") but then it's got the event as a string and just not as clean.

我也有的IObservable< EventPattern< EMSMessageEventArgs>> ,而不是的IObservable< EMSMessageEventArgs> ;

我想了解的是:当我应该使用 FromEvent FromEventPattern ?这似乎有点试验和错误。

What I'd like to understand is: when should I use FromEvent over FromEventPattern? It seems a bit trial and error.

推荐答案

使用FromEvent事件结构看上去并不像一个.NET事件模式(即不是基于发件人,事件参数),并使用FromEventPattern的基于模式的一。 - 巴特迪斯(接收队)

"Use FromEvent for events structurally don't look like a .NET event pattern (i.e. not based on sender, event args), and use FromEventPattern for the pattern-based ones." - Bart De Smet (Rx team)

这篇关于当使用Observable.FromEventPattern而不是Observable.FromEvent?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆