Observable.FromEvent<> 无法使用 Umbraco ContentService.Published

Observable.FromEvent<> not working with Umbraco ContentService.Published

我正在尝试使用 Rx 连接 Umbraco 事件:

Observable.FromEvent<TypedEventHandler<IPublishingStrategy, PublishEventArgs<IContent>>, PublishEventArgs<IContent>>(
h => ContentService.Published += h, h => ContentService.Published -= h).Subscribe(Console.WriteLine);

但是我在订阅时从 Rx 的深处得到了一个异常:

Cannot bind to the target method because its signature or security transparency is not compatible with that of the delegate type.

我可以使用不太干净的解决方法让它工作:

var subject = new Subject<PublishEventArgs<IContent>>();
ContentService.Published += (sender, args) => subject.OnNext(args);
subject.Subscribe(Console.WriteLine);

但是,我如何使用 Observable.FromEvent<> 连接它?

根据 Enigmativity 的建议,这是有效的解决方案:

Observable.FromEventPattern<TypedEventHandler<IPublishingStrategy, PublishEventArgs<IContent>>, PublishEventArgs<IContent>>
            (h => ContentService.Published += h, h => ContentService.Published -= h).Subscribe(Console.WriteLine);