我正在查看博客和reactivex.net书籍,但我很难看到如何从NHibernate查询创建一个可观察的流。在RxJava中,我会使用Observable.fromCallable - 或者甚至不是最好的方法。我知道我需要从查询结果中打开无状态流,但关于如何做到这一点的语法使我望而却步。
从NHibernate查询创建Observable流的语法是什么?另外,如果不同,如何发出持久性?
谢谢!
答案 0 :(得分:1)
由于Rx的存在是为了简化异步编程,我假设您的NHibernate(我从未使用过它)查询是异步的并返回Task
。 Rx可以很容易地使用Task
将ToObservable()
转换为可观察对象。
所以它可能看起来像这样:
var observable =
session
.CreateCriteria<Product>()
.ListAsync<Product>()
.ToObservable();
observable将在查询完成时发出查询结果,或者在出现错误时抛出异常。
您可以阅读有关ToObservable()
here