问题标签 [fluent-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 投票
3 回答
312 浏览

fluent-nhibernate - FluentNHibernate:让 Examples.FirstProject 工作

我试图让最基本的示例在 FnH 中运行。我从 Examples.FirstProject 开始。但是,我没有使用 SQL lite 配置。相反,我将配置设置为 SQL2005 并按照示例中的图示创建表。

单步执行代码时,创建会话工厂时似乎没有问题。但是,当代码到达“transaction.commit”行时,我确实收到了一个错误。错误内容如下:

我想知道在 SQL Server 中创建表的方式是否存在问题。ID 是“int”类型,名称等是“varchar(50)”。我将 Store、Product 和 Employee 的 PK 设置为其各自的 ID 字段。我还使 ID 自动增加 1(SQL Server 中的 IdentitySpecification 列属性)。StoreProduct 是多对多的,并且根据图表也存在。

任何帮助,将不胜感激。谢谢。

0 投票
2 回答
4801 浏览

nhibernate - NHibernate Fluent 与属性

我有兴趣将一些 NHibernate 配置/映射移动到代码中以帮助解决一些维护问题。谁能提供 Fluent NHibernate 与 NHibernate.Mapping.Attributes 的任何建议/优点/缺点/比较?

我对 Java Hibernate 注释有一些经验,我很喜欢,但我很好奇 NHibernate 属性是否具有可比性,以及 Fluent 是否提供了任何应该考虑的主要优点/缺点。

0 投票
3 回答
4098 浏览

fluent-nhibernate - NHibernate 中的空值对象

我有一个包含地址作为值对象的人员实体:

它在 NHibernate 文档中声明,如果值对象(Address1、Address2 等)的所有属性都为 null,则整个组件将被映射为 null(即 Person.Address 将为 null)。在所有地址字段为空的情况下,这会给我带来问题,因为在我可能拥有的页面中(我正在做 ASP MVC):

这会因空引用异常而中断。因此,我正在寻找一种干净的方法来将 Address 设置为新的 Address() 对象,而不是 null 如果当我从数据库中加载 Person 时所有字段都为空而不手动执行。我打折了以下想法:

在我的视图中进行空值检查(yuk,可怕)

使数据库字段不可为空(我正在处理旧数据库)

有人有什么想法吗?

0 投票
1 回答
208 浏览

nhibernate - NHibernate 多对多关系,包括关系的一侧

鉴于此数据库架构(它已传给我):

图式
(来源:robtennyson.us

我想要关于如何建模和使用 fluent-nhibernate 映射它的建议。

我唯一能想到的是一种非常活跃的建模记录风格(每个表都有一个类和明显的关联)。

不过暂时忽略数据库,我想我希望每个设施都始终拥有所有合规标志的列表。这样我就可以询问工厂标志“XX”的合规日期是什么。

任何帮助都将不胜感激,即使它只是朝着正确的方向轻轻推动。

谢谢,罗伯

0 投票
1 回答
767 浏览

nhibernate - 使用 Fluent NHibernate 的自动映射的“具有具体类的表”映射

有人是否可以将 Fluent NHibernate 配置为使用“具有具体类的表”继承自动映射对象。在查看自动映射(我已写入文件)时,我有许多从 EntityBase 派生的实体,但我希望 Id 列位于每个表上而不是 EntityBase 表上。

我搜索了 Fluent 文档,但看不到与此相关的任何内容。

提前致谢。

0 投票
1 回答
129 浏览

nhibernate - 我如何在 NHibernate 中映射它

我有两个课程,Survey 和 Poll 课程。我也有问题和问题选择课程。我如何映射这些,以便得出特定的表格格式。以下是所涉及的课程。

我正在拍摄的结果表包括以下内容

最好,我真的很想知道 Fluent NHibernate,或者只是映射 xml 也可以。

0 投票
2 回答
3626 浏览

nhibernate - NHibernate:根据父级将同一类映射到多个表

我有一个模型,其中多个类都有一个值类型列表:

Foo 和 Bar 除了它们都包含这些 val 之外是无关的。ValTypes 的添加、删除等规则对于每个类都不同。我想将此设计保留在我的代码中。

例如,有时我想将一些 Vals 从 Foo 复制到 Bar。在数据库中,每个 ValType 都有自己的表,以保持它小而轻(它只有父 ID + 2 个字段),并允许完整性检查。我知道 NHibernate 说我应该让我的对象像数据库一样细化,但这只会让我的代码更丑陋。

到目前为止,我想到的最好的方法是为 ValType 创建单独的子类,每个父类一个。然后我可以在那个级别映射那些。然后,我将连接添加和删除逻辑以在正确的子类之间自动转换,并将它们实际存储在具有正确子类类型的私有列表中。但这似乎有点令人费解。

我如何在 NHibernate 中映射它(如果可能的话,流利的 NHibernate)?

请让我知道这是否是重复的——我不太确定如何搜索它。

0 投票
2 回答
2752 浏览

fluent-nhibernate - 这个 Fluent NHibernate 配置有什么问题?

以下设置有什么问题?AutoPersistanceModel 上的 Where 过滤器似乎不起作用,表名称约定似乎也不起作用。我最终得到的错误是“命名空间'urn:nhibernate-mapping-2.2'中的元素'class'在命名空间'urn:nhibernate-mapping-2.2'中具有无效的子元素'property'。预期可能的元素列表:命名空间‘urn:nhibernate-mapping-2.2’中的‘meta,jcs-cache,cache,id,composite-id’。” 这是我的代码:

0 投票
1 回答
2095 浏览

fluent-nhibernate - 如何在流利的 nhibernate 中覆盖约定的级联规则

我有两节课

遵循以下约定:

和这些映射覆盖

我知道我需要为 Document 制作一个 IClassConvention 来更改级联行为,但是我无法让它工作!如果我这样做:

我得到:“未声明'级联'属性。”

如果我这样做:

然后我得到:

所以我补充说:

到我的文档映射,但文件总是空的。我究竟做错了什么?如何覆盖单个 HasMany 关系的级联规则?谢谢安德鲁

Ps 很抱歉这个交叉帖子,但我需要尽快解决这个问题。

0 投票
1 回答
112 浏览

nhibernate - 如何最好地为以下 SQL Schema 设计实体数据类?

我有以下数据库架构:

http://lh4.ggpht.com/_SDci0Pf3tzU/SdM3XnAmmxI/AAAAAAAEps/Ie3xW3ZVNfQ/styleerror.png

问题是如何在 Nhibernate 中创建实体数据类?

这是否更好:

}

还是这样更好?公共类商店 { 公共虚拟 int Id { 获取;私人套装;} 公共虚拟字符串名称 { 获取;放; }

}

我认为第一个比第二个更容易理解,不是吗?