问题标签 [nhibernate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
575 浏览

windows - NHibernate 和 Oracle 通过 Windows 身份验证连接

如何使用 Windows 身份验证连接到 Oracle 数据库?

目前,我只使用 Oracle 用户名和密码,但是,一个要求是让用户在安装时选择 Windows 身份验证,因为我们提供与 SQL 相同的选项。

0 投票
2 回答
6151 浏览

c# - NHIbernate:Restriction.In 和 Restriction.InG 之间的区别

在 NHibernate 中创建标准时,我可以使用

Restriction.In() 或
Restriction.InG()

它们之间有什么区别?

0 投票
4 回答
6508 浏览

c# - 在 NHibernate 中管理会话的最佳方式?

我是 NHibernate 的新手(我的第一个大项目)。
我一直在使用一种简单的数据访问方法,通过在 using 块中创建 ISession 对象来抓取我的对象或对象列表,并且在退出代码块后会话被销毁。

但是,这在需要延迟加载的情况下不起作用。
例如,如果我有一个 Customer 对象,它的属性是 Orders 的集合,那么当尝试延迟加载时,我会收到 Hibernate 异常。
有人使用不同的方法吗?

0 投票
2 回答
9360 浏览

nhibernate - ICriteria 上的 NHibernate SetTimeout

有人能告诉我界面SetTimeout(int)中的方法使用什么单位吗? 是毫秒、秒、分钟还是其他?ICriteria

0 投票
3 回答
10360 浏览

c# - NHibernate Session.Flush() 在未发生更新时发送更新查询

我有一个 NHibernate 会话。在本次会议中,我正在执行 1 个操作,即运行此代码以获取列表:

Session.Flush()在结束时打电话HttpRequest,我得到一个HibernateAdoException。NHibernate 将更新语句传递给数据库,并导致外键违规。如果我不运行flush,则请求将毫无问题地完成。这里的问题是我需要刷新以防其他会话中发生更改,因为此代码在其他区域中被重用。我可能缺少其他配置设置吗?


这是异常的代码:

没有参数显示为正在传递。

0 投票
11 回答
4788 浏览

c# - IList.Cast() 返回错误,语法看起来没问题

所以,我在将“list”元素转换为通用 IList 时遇到了构建错误……任何人都可以在这里看到明显的错误吗?

0 投票
4 回答
79590 浏览

.net - NHibernate ISession Flush:何时何地使用它,为什么?

让我彻底困惑的一件事是, 与和session.Flush结合使用。session.Commitsession.Close

有时session.Close有效,例如,它提交了我需要的所有更改。我知道当我有一个事务或一个具有多个创建/更新/删除的工作单元时我需要使用提交,以便在发生错误时我可以选择回滚。

但有时我真的被背后的逻辑所阻碍session.Flush。我见过一些例子,你有一个session.SaveOrUpdate()后跟冲洗,但是当我删除冲洗它无论如何都可以正常工作。有时我在 Flush 语句中遇到错误,说会话超时,删除它确保我没有遇到该错误。

有没有人对何时何地使用 Flush 有很好的指导?我已经为此检查了 NHibernate 文档,但我仍然找不到一个简单的答案。

0 投票
5 回答
6895 浏览

nhibernate - 使用 NHibernate 进行查询的最佳实践

在使用其他技术( CSLASubsonic)几年后,我又开始使用 NHibernate ,我发现查询有点令人沮丧,尤其是与 Subsonic 相比。我想知道人们正在使用哪些其他方法?

Hibernate Query Language 对我来说感觉不对,似乎太像编写 SQL,在我看来这是使用 ORM 工具的原因之一,所以我不必这样做,而且它都是 XML,这意味着它是重构不好,错误只会在运行时发现?

标准查询,似乎不够流畅。

读过Ayende 的 NHibernate Query Generator是一个有用的工具,这是人们正在使用的吗?还有什么?

编辑:值得一读 http://www.ayende.com/Blog/archive/2007/03/17/Implementing-Linq-for-NHibernate-A-How-To-Guide--Part.aspx

0 投票
1 回答
2463 浏览

nhibernate - 如何使用 NHibernate 将字符串列表映射到我的实体?

我的数据库中有两个表:文章和标签

标签表由 ArticleID(外键)和标签(varchar)组成。

现在我需要使用 IList 标签或 ReadOnlyCollection 标签将文章标签映射到文章实体上的只读集合。

我查阅了 NHibernate 参考资料,但我似乎无法确定何时使用 Set、Bag 和其他 Nhibernate 集合。我见过使用 ISet 集合的示例,但我真的不喜欢将我的实体类绑定到 NHibernate 类型。

如何在 NHibernate 中进行映射?

编辑:我最终使用了 a <bag>,因为它不需要索引:

0 投票
6 回答
3156 浏览

c# - (N)Hibernate - 是否可以将多个表动态映射到一个类

我有这样的情况,我使用 GIS 软件,它将有关 GIS 对象的信息存储到每个类型/类别的 GIS 对象(道路、河流、建筑物、海洋……)的单独数据库表中,并保留它存储的元数据表有关类名及其 DB 表的信息。

这些不同类的GIS 对象共享一些参数,即Description 和ID。我想用一个通用的 C# 类(我们称之为 GisObject)来表示所有这些不同的 GIS 类,这足以满足我需要从应用程序的非 GIS 部分执行的操作,该应用程序列出了给定 GIS 的 GIS 对象班级。

对我来说,问题是如何使用 NHibernate 映射这些对象,以便在创建 C# GisObject 以接收和使用表名作为将从元表中读取的参数时向 NHibernate 解释(它可以分两个步骤,我可以在第一步中手动获取表名,然后在拉取 GisObject 数据时将其传递给 NHibernate)。

有没有人处理过这种情况,可以做到吗?