我是新來無擴展,處理有這樣定義事件COM庫:如何正確觀察非標準事件?
public delegate void MyDelegate(int requestId, double price, int amount);
public event MyDelegate MyEvent;
如何正確觀察到這一點?我嘗試使用Observable.FromEvent()
,但由於事件的參數不是EventArgs
類型,我看不到FromEvent()
或FromEventPattern()
將如何工作。
我目前的解決方法是將自定義委託附加到事件,然後調用Subject.OnNext()
,但我猜這不是我應該這樣做。
這是我目前的解決方法的一個例子:
MyEvent += new MyDelegate((int requestId, double price, int amount) =>
{
Task.Run(() =>
{
var args = new MyArgs()
{
requestId = requestId,
price = price,
amount = amount,
};
this.mySubject.OnNext(args);
});
});