草庐IT

NHibernate3

全部标签

c# - NHibernate 对象引用一个未保存的 transient 实例在刷新之前保存 transient 实例

我正在尝试保存一个复杂的对象,该对象内部有许多引用元素,而且它在大多数情况下都能完美运行。但是在某些情况下,我们会遇到以下异常,objectreferencesanunsavedtransientinstance-savethetransientinstancebeforeflushingorsetcascadeactionforthepropertytosomethingthatwouldmakeitautosave.Type:Namespace.Core.Client.ClientDetails,Entity:Namespace.Core.Client.ClientDetails问

c# - VIEWS 和 Fluent NHibernate?

可以使用FluentNHibernate映射VIEW吗?如果是,怎么办? 最佳答案 我认为您可以使用WithTable方法将表名替换为View名:WithTable("myview");编辑:为了更新这个答案,FluentNHibernate现在使用:Table("myview"); 关于c#-VIEWS和FluentNHibernate?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

c# - 使用 Nhibernate 时,检查 C# .Net 中的列表相等性不起作用

我似乎在检查列表相等性时遇到了问题。在我的例子中,我有两个角色对象,我想看看它们是否相等。每个角色都包含一个名称和一个权限列表。每个权限仅包含一个名称。publicclassRole:BaseDomain{virtualpublicStringName{get;set;}virtualpublicIListPermissions{get;set;}}publicclassPermission{virtualpublicStringName{get;set;}}我在Role和Permission对象上定义了一个equals方法。这些对象是使用Nhibernate从数据库中加载的。这意味着

c# - NHibernate session 管理和延迟加载

我花了很多时间试图找出我在NHibernate中的session管理问题。我假设我的很多麻烦是由于缺乏对IoC和AOP概念的了解;至少我是这么想的,因为FabioMaulo一直在指导我。无论如何,我的问题是我有一个win表单应用程序正在进行“获取”调用并将结果绑定(bind)到网格。绑定(bind)后,用户可能会执行某种“写入”操作,这些操作会导致session在写入后关闭,以尝试使用session每次使用的概念。然后用户可能会滚动网格,这会导致延迟加载开始,现在session已关闭,我得到一个异常。我不想让我的View识别我的session,我不想在用户关闭表单时发送KillAllS

java - Hibernate有没有类似于Nhibernate "Mapping by code"的东西

在Nhibernate中,我们有FluentNhibernate,现在,在Nhibernate3.2中有内置的“按代码映射”功能。两者都允许您以编程方式为您的域构建映射,我们可以编写一些约定来映射所有域,或者我们可以为每个相应的域对象编写单独的类。Hibernate有类似的东西吗? 最佳答案 您应该能够通过使用Hibernate配置API在没有XML和注释的情况下配置Hibernate,请参阅http://docs.jboss.org/hibernate/orm/4.1/javadocs/org/hibernate/cfg/Conf

nhibernate - 如何删除 NHibernateMessageModule 在 NServiceBus 中的调用?

我没有使用nhibernatesaga持久性,因此我不需要NHibernateMessageModule。那么我该如何删除它呢? 最佳答案 您必须在启动总线之前从容器中移除模块,因为之后它会被缓存。您可以通过在.CreateBus().Start()之前调用.RunCustomAction()并在其中包含您的代码来执行此操作。在内部,CaSTLeWindsorBuilder这样做:Component.For(GetAllServiceTypesFor(concreteComponent)).ImplementedBy(concret

nhibernate流利的镜像

有人知道我如何在两个桌子之间镜像。我的意思是,我希望输入表A的每个数据都会自动输入到表B。我想在没有两次的情况下执行此操作以保存每个表的功能谢谢看答案您可以通过查看LINQ来加入表。请看一下帖子似乎其他人也有类似的问题。干杯!

在NHIBERNATE会话中恢复已删除的实例

我删除如下所示的对象NHibernate:varobj=session.Get(some_guid);session.Delete(obj);该对象现在是瞬态的,并且MyModel具有ID的对象some_guid被标记为已删除对象NHibernate会议。后来在我的旧应用程序中,我需要取消删除一些对象在会话中删除。我在下面尝试了解决方法,但没有运气:vare=((SessionImpl)session).PersistenceContext.EntityEntries;varallEntities=e.Keys.Cast().ToList();varitem=allEntities.First

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

如何使用Windows身份验证连接到Oracle数据库?目前,我只使用Oracle用户名和密码,但是,要求是在安装时为用户提供选择Windows身份验证的选项,因为我们提供与SQL相同的功能。 最佳答案 您需要将SQLNET.ORA中的AUTHENTICATION_SERVICES条目修改为:SQLNET.AUTHENTICATION_SERVICES=(NTS)此外,您还需要在Oracle中设置帐户以匹配Windows帐户。看看http://www.dba-oracle.com/bk_sqlnet_authentication_s

c# - NHibernate 哪个缓存用于 WinForms 应用程序

我有一个带有数据库后端(oracle)的C#WinForms应用程序,并使用NHibernate进行O/R映射。我想尽可能减少与数据库的通信,因为这里的网络很慢,所以我阅读了二级缓存。我找到了thisquitegoodintroduction,其中列出了以下可用的缓存实现。我想知道我应该为我的应用程序使用哪种实现。缓存应该很简单,它不应该显着减慢第一次出现的查询,并且它不应该占用太多内存来加载实现程序集。(使用NHibernate和CaSTLe,应用程序已经占用了多达80MB的RAM!)Velocity:usesMicrosoftVelocitywhichisahighlyscalab