我试图将 NHibernate 与我的服务层分离时碰壁了。我的架构如下所示:
网络 -> 服务 -> 存储库 -> nhibernate -> 数据库
我希望能够从我的服务层和可能的 web 层产生休眠查询,而这些层不知道它们正在处理什么 orm。目前,我的所有存储库都有一个 find 方法,该方法包含IList<object[]> criteria
. new object() {"Username", usernameVariable};
这允许我从我的架构中的任何地方传递一个标准列表。NHibernate 接受它并创建一个新的 Criteria 对象并添加传入的标准。这适用于我的服务层的基本搜索,但我希望能够传入我的存储库转换为 NHibernate 标准的查询对象。
真的,我很想实现类似这个问题中描述的东西:抽象休眠标准是否有价值。我只是没有找到任何关于如何实现这样的东西的好资源。该问题中描述的方法是一个好方法吗?如果是这样,任何人都可以提供一些关于如何实施这种解决方案的指示吗?