我正在使用引用log4net 1.2.10.0的NHibernate 2.1.2.400.在同一个项目中,我也使用简单的会计SDK,遗憾的是它仍然使用log4net 1.2.9.0.
所以我可以让NHibernate工作,如果我引用log4net 1.2.10.0但是simpleSDK不起作用.反之亦然......
我猜大多数问题都来自于log4net已经改变了它的汇编密钥.我尝试使用绑定重定向但没有成功:2个DLL没有相同的密钥.
我正在考虑重新编译NHibernate以使用log4net 1.2.9.0,但这似乎是错误的做法,我的感觉是Simply Accounting不会更新他们的SDK以便很快使用log4net 1.2.10.0.
处理这个问题的最佳方法是什么?是否有可能解决?
什么是何时使用这些工具中的一个而不是另一个?我发现Subsonic在快速完成任务方面非常有用,但在大型项目中,它往往无法扩展,并且它将您的域模型与数据库模型联系起来.这就是Nhibernate的用武之地,因为它为您提供了与您的数据库模型无关的轻量级POCO,但设置时间要长得多.
NHibernate渴望加载可以使用Fetch和完成FetchMany,如在Mike Hadlow博客上的NHibernate Linq Eager Fetching中所述.
这两种方法有什么区别,在什么情况下都会使用?
我一直试图掌握Hibernate的逆属性,它似乎只是概念上难以解决的问题之一.
我得到的要点是,当你有一个使用一对多映射的Child对象集合的父实体(例如Parent)时,在映射上设置inverse = true告诉Hibernate'另一边(Child) )有责任更新自己以维护其表中的外键引用'.
这样做对于在代码中向集合中添加Children,然后保存Parent(使用cascade-all set)有两个好处:在数据库上保存一个不必要的命中(因为没有逆集,Hibernate认为它有两个地方更新FK关系),并根据官方文档:
如果关联的列被声明为NOT NULL,则NHibernate在创建或更新关联时可能会导致约束违规.要防止出现此问题,必须使用标记为inverse ="true"的多值结束(集合或包)的双向关联.
到目前为止,这一切似乎都有意义.我不明白是这样的:你什么时候会不希望使用逆=真正在一个一对多的关系?
我想知道是否有人能够很好地解决我在过去几年遇到过的问题.
我有一个购物车,我的客户明确要求它的订单很重要.所以我需要将订单持久保存到DB.
显而易见的方法是简单地插入一些OrderField,我将数字0分配给N并以这种方式对其进行排序.
但这样做会使重新排序变得更加困难,我不知何故觉得这个解决方案有点脆弱,有一天会回到我身边.
(我在NHibernate和SQL Server 2005中使用C#3,5)
谢谢
我一直在寻找一些关于Linq到Nhibernate的示例项目或教程.
有谁知道任何好的?
我有一个使用NHibernate作为其ORM的应用程序,有时它会遇到性能问题,因为它是如何访问数据的.可以做些什么来改善NHibernate的性能?(每个答案限于一个建议)
在NHibernate中SaveOrUpdate和Save/Update之间有什么区别.为什么你总是不使用SaveOrUpdate?另外,SaveOrUpdateCopy有什么意义?
我试图弄清楚如何使用NHibernate配置与映射来更新表模式,而不是删除和重新创建它们.
目前我正在使用NHibernate.Tool.hbm2ddl.SchemaExport带有FluentNHibernate 的obj来为mysql数据库生成数据库模式.虽然我不能说这是一个很大的问题,但每当我调用SchemaExport.Execute数据库时,它都会删除所有表,然后重新创建它们.
如果我可以让它更新现有的表结构,尽可能保留数据,那会更酷.但我真的不想使用商业产品或代码生成器,因为我不喜欢一般的代码生成,而且我不需要这么多,我会考虑支付它.所以希望任何答案都会记住这些警告.
我知道如何使用show_sql配置选项在运行时将SQL记录到log4net/NLog/trace窗口.
我正在寻找的是一种给Query<T>()NHibernate检索生成的SQL的方法.
我查看了Persister类,Drivers,不同的拦截器和事件.有很多地方可以看,即使缩小搜索范围也会有很大的帮助.
nhibernate ×10
.net ×5
orm ×3
linq ×2
c# ×1
collections ×1
database ×1
dll ×1
fetch ×1
hibernate ×1
inverse ×1
log4net ×1
one-to-many ×1
performance ×1
schema ×1
sql ×1
sql-order-by ×1
subsonic ×1