问题标签 [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.
.net - 解决 Spring.NET 和 NHibernate 程序集之间的不兼容问题
我正在尝试使用 NHibernate 和 Spring.NET 开发一个 .NET Web 项目,但我被卡住了。Spring.NET 似乎依赖于不同版本的 NHibernate 程序集(也许它需要 1.2.1.4000 而我的 NHibernate 版本是 1.2.0.4000)。
我最初使用“bindingRedirect”标签解决了类似的问题,但现在即使这样也停止了工作。
有没有简单的解决方案来解决这些图书馆间的关系?
c# - Fluent NHibernate 多对多
我正在使用 Fluent NHibernate,并且在与我的一个类建立多对多关系时遇到了一些问题。这可能是一个愚蠢的错误,但我一直在努力让它工作。无论如何,我有几个具有多对多关系的类。
映射看起来像这样
人: ...
团体:...
当我运行我的集成测试时,基本上我正在创建一个新的人和组。将组添加到 Person.GroupsOwned。如果我从存储库中取回 Person 对象,则 GroupsOwned 等于初始组,但是,如果我检查 Group.Admins 上的计数,则当我取回组时,计数为 0。Join 表具有 GroupID 和PersonID 保存在其中。
感谢您提供的任何建议。
nhibernate - Strict vs NonStrict NHibernate 缓存并发策略
这个问题是关于NHibernate二级缓存的ReadWrite和NonStrictReadWrite缓存并发策略的区别。
据我了解,当您拥有分布式复制缓存时,这两种策略之间的区别是相关的- nonstrict 不能保证一个缓存具有与另一个缓存完全相同的值,而严格的读/写应该 - 假设缓存提供程序确实适当的分布式锁定。
我不明白的部分是,当您拥有单个缓存或分布式分区(非复制)缓存时,严格与非严格的区别是如何相关的。可以相关吗?在我看来,在非复制场景中,时间戳缓存将确保不提供过时的结果。如果它可能是相关的,我想看一个例子。
c# - 使用 NHibernate 的用户定义字段
我需要将用户定义的字段功能添加到使用 NHibernate 的 asp.net c# 应用程序。
用户必须能够“动态地”在系统中的多个对象中添加和删除字段,最好不要出现任何系统停机时间。
一个重要的限制是用户不能更改数据库架构 - 也就是说,我可以添加支持此功能所需的任何字段/表,但是当用户添加或删除字段时,他无法更改数据库架构.
编辑:我还必须按用户定义字段的值进行排序和过滤。
我知道如何在 c#/SQL 中使用键/值表执行此操作,但我不知道如何使用 NHibrenate 执行此操作(包括按用户定义的字段进行过滤和排序)
nhibernate - 如何从 NHibernate 映射文件生成“迁移”DDL?
我在我的项目中使用 NHibernate 2 和 PostgreSQL。SchemaExport 类在为数据库生成 DDL 方案方面做得很好,但在第一个应用程序之前它就很棒。
有没有办法使用 NHibernate 映射文件生成“迁移”DLL(一批“ALTER TABLE”而不是 DROP/CREATE 对)?
sql - 如何选择 nHibernate 子查询结果的 Count(*)
为了在 nHibernate 中分页查询,我需要执行以下操作:
我尝试了以下方法,
我得到一个 nHibernate 异常,说我无法将 Object 转换为 int32。
关于所需语法的任何想法?
编辑
子查询使用不同的子句,我不能用 e.ID,e.Name 替换,Count(*)
因为Count(*) distinct
它不是有效的语法,而且distinct count(*)
没有意义。
security - 使用 NHibernate 时实现安全性的最佳实践是什么?
传统主义者认为,与使用 NHibernate 等对象关系映射 (ORM) 框架相比,存储过程提供了更好的安全性。
为了反驳这个论点,NHibernate 可以使用哪些方法来确保适当的安全性(例如,防止 sql 注入等)?
(每个答案请只提供一种方法)
nhibernate - 如何在 nHibernate 中完全禁用缓存?
如何在 nHibernate 中完全禁用缓存?
nhibernate - 您如何处理 NHibernate 中的并发性?
您如何使用 NHibernate 支持乐观/悲观并发?
sql - NHibernate 事务和竞争条件
我有一个 ASP.NET 应用程序,它使用 NHibernate 在用户操作时以事务方式更新一些表。涉及到一个日期范围,其中只能对表格“预订”进行一个条目,以便指定排他日期。
我的问题是如何防止竞争条件,即两个用户操作几乎同时发生并导致多个条目进入“预订”>1 日期。我不能在调用 .Commit() 之前检查,因为我认为这仍然会导致竞争条件?
我所能看到的只是在提交后进行检查并手动回滚更改,但这让我的嘴巴感觉很糟糕!:)
booking_ref (INT) PRIMARY_KEY AUTOINCREMENT
预订开始(日期时间)
预订结束(日期时间)