如何将 NHibernate 与 Rx.NET 一起使用?



我正在浏览博客和 reactivex.net 书籍,但很难看到如何从NHibernate查询创建可观察的流。在RxJava中,我会使用Observable.fromCallable - 或者这甚至不是最好的方法。我知道我需要从查询结果中打开无状态流,但关于如何做到这一点的语法让我无法理解。

从 NHibernate 查询创建可观察流的语法是什么?另外,如果不同,如何发出持续?

谢谢!

由于 Rx 的存在是为了简化异步编程,我假设您的 NHibernate(我从未使用过它(查询是异步的并返回一个Task。Rx 使得使用ToObservable()Task转换为可观察内容变得非常容易。

所以它可能看起来像这样:

var observable = 
session
.CreateCriteria<Product>()
.ListAsync<Product>()
.ToObservable();

可观察量将在查询完成时发出查询结果,或者在出现问题时引发异常。

您可以在此处阅读有关ToObservable()的更多信息

最新更新