问题标签 [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 投票
1 回答
361 浏览

c# - 流畅的 nHibernate 和 JoinSubClasses

我不确定这是否与我的 Fluent 配置或我的思维逻辑有关。

基本上我有一个 Person 类,我从中继承了两个类,Author 和 Borrower(它是一个库系统)。我的映射是。

现在,如果我运行 HQL “FROM Author a ORDER BY a.Name”,它将返回所有作者和借款人实体的列表,我显然只想要一个作者列表。请随时让我明白这一点。

0 投票
2 回答
330 浏览

c# - 我可以信任 NHibernate Fluent Automappings 吗?

我目前正在测试使用 NHibernate Fluent Automappings 来映射我的域对象并创建我的数据库模式。

这是个好主意还是坏主意?

0 投票
6 回答
22616 浏览

fluent-nhibernate - 流利的休眠 HasOne WithForeignKey 不起作用

每当我加载 Task 类时,Document 属性始终为 null,尽管 db 中有数据。

任务类:

AutoPersistenceModel 的任务映射覆盖:

如您所见,NHProf 所说的正在运行,连接条件错误,WithForeignKey 似乎没有生效。事实上,我可以在上面的代码中写任何字符串,这没什么区别。

它应该是:

如果我破解数据库中的数据以使 id 匹配,则加载数据,但显然这是不正确的 - 但至少它证明它加载了数据。

编辑:在流利的 nhib 源中翻找 XML 会产生以下结果:

编辑:继承人架构:

有人有什么想法吗?

谢谢

安德鲁

0 投票
1 回答
5906 浏览

nhibernate - 流畅的休眠模式生成

作为 S#arp 架构的一部分,我一直在使用 FluentNhibernate。下面是一个示例映射。

然后我使用 Nhibernate 模式生成将我的 ddl 输出到文件。

到现在为止还挺好。但是,为该表生成的 ddl 不匹配,实际上包含错误。

  • 即使我试图强制它使用 INT,枚举状态也表示为字符串
  • 电话号码长度与映射不匹配。

我想知道如何进行调试。这是 FluentNH 中的映射问题还是模式生成器的问题。如果我可以输出生成的 xml,那么我可以验证。有谁知道如何做到这一点?

谢谢,

0 投票
1 回答
1161 浏览

fluent-nhibernate - Fluent NHibnernate HasManyToMany 和索引

我正在尝试使用 Fluent NHibnernate 映射多对多集合。我的模型类有这个属性:

我流畅的映射是:

当我运行我的应用程序时,我收到以下异常消息:

命名空间“urn:nhibernate-mapping-2.2”中的元素“列表”在命名空间“urn:nhibernate-mapping-2.2”中具有无效的子元素“多对多”。预期的可能元素列表:命名空间“urn:nhibernate-mapping-2.2”中的“索引,列表索引”。

应该有办法做到这一点。有谁知道我做错了什么?

0 投票
1 回答
1053 浏览

nhibernate - Fluent NHibernate/NHibernate 中的多级子实体对象

我有一个包含 Child1 对象列表的实体。映射似乎对此工作正常。如果我尝试将 Child2 对象列表添加到 Child1 实体并设置映射,则似乎没有创建 xml 映射并且我收到此错误:

测试方法 vRATest.ORMTest.NHibernateTests.NHibernate_Should_Be_Able_To_Get_All_Routes_Using_ProjectID 抛出异常:NHibernate.MappingException:关联引用未映射的类:vRA.Domain.RouteLocationNH。

我现在已经检查了我的实体和映射好几次,但我似乎无法弄清楚如何使这个第 3 级工作。这在 Fluent NHibernate 甚至 NHibernate 中是否可行?我对这两种技术都很陌生,所以我想我最好问问。如果有人有 3 级实体的工作示例,我会很高兴看到如何做到这一点。

提前致谢!账单

0 投票
1 回答
2444 浏览

nhibernate - 具有流畅映射和 Syscache2 二级缓存的 NHibernate

我有一个非常简单的 Country 实体,我想缓存它。这非常有效,但我希望返回缓存实例的克隆版本或将其设为只读,以防止开发人员更改它的状态。

我将如何实现这一目标?我认为 Fluent Readonly() 方法会强制执行此操作,但事实并非如此。

流利映射示例:

我的单元测试清楚地表明实体已缓存,并且在后续获取时返回相同的实体,但我希望对象在从持久存储加载后是不可变的。

谢谢!

0 投票
1 回答
1209 浏览

c# - NHibernate Fluent 跨 DLL 的自动映射

我在 1 个项目/dll 中有一个 Person 类和一个派生自另一个项目/dll 中的 Person 的 StandardUser 类。我有一个包含 StandardUser 的 Password 类(Password 和 StandardUser 在同一个 dll 中)。

我似乎无法让流利的自动映射在这种情况下工作。

它告诉我:NHibernate.MappingException:来自表密码的关联指的是未映射的类:DomainModel.Users.DomainObjects.StandardUser

如果我将 Person 类移动到与 StandardUser 相同的 dll 中,那么它可以工作。如果 Password 包含 Person 而不是 StandardUser,它也可以工作。

我是否遗漏了某些内容,或者 Fluent Automappings 不支持此功能?


编辑/回答:看来您必须在 AutoMappings 中映射 StandardUser 的程序集。在映射基类之前添加。我不确定这是设计使然还是错误。

0 投票
2 回答
6616 浏览

fluent-nhibernate - 流畅的 NHibernate - HasMany().WithKeyColumnName

我刚刚从 Google 代码中获得了 Fluent 的最新版本,自从我上次使用它以来,似乎有些映射发生了变化。

以前,当我加入的 id 在第二个表中具有不同的名称时,我可以使用以下方式映射关系

最新版本的 Fluent 是怎么做的?

谢谢

0 投票
1 回答
226 浏览

fluent-nhibernate - 如何在我的基类中映射私有属性?

使用流利的 nhibernate,是否可以在基类中映射私有属性?

我在我的基类中定义了这个:

但是当我像这样映射它时:

我得到一个FluentNHibernate.UnknownPropertyException