谁能帮我解决一个关于NHibernate的问题

Essence_zhx 2004-10-28 08:44:52
为什么会出现 could not synchronize database state with session 这样的错误。
上面的错误是出现在把ID的<generator class="assigned" />时出现,但是把ID设置成<generator class="identity" />就不会出现这样的错误。请大家指教

具体的代码可以在http://www.cnblogs.com/kilxy/archive/2004/10/27/57313.html中看到
...全文
155 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dojoin 2004-11-17
  • 打赏
  • 举报
回复
chsfly(南山):加我MSN: dongjun316@hotmail.com
chsfly 2004-11-03
  • 打赏
  • 举报
回复
怎么老兄还没搞定,发过我帮你搞定.
hell9999 2004-11-03
  • 打赏
  • 举报
回复
看来没搞定啊
chsfly 2004-11-02
  • 打赏
  • 举报
回复
老兄的贴子发到今天,只有我一人回复.可见.net开源软件并不理想.老兄搞定了吗?
chsfly 2004-10-28
  • 打赏
  • 举报
回复
是不是你的job_Id在数据库设自动增加.所以就要设为<generator class="identity" />.
如果主建不是自动增加的话,就可以设为<generator class="assigned" />
------------看了绝对不后悔,下载后吱个声--------- 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦和浪费时间的.NHibernate NHibernate 不仅仅管理.NET类到数据库表的映射(包括.NET 数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和ADO.NET处理数据的时间。   NHibernate的目标主要是用于与数据持久化相关的编程任务,能够使开发人员从原来枯燥的SQL语句的编写中解放出来,解放出来的精力可以让开发人员投入到业务逻辑的实现上。对于以数据为中心的程序,开发人员往往是在数据库中使用存储过程来实现商业逻辑,这种情况下NHibernate可能不是最好的解决方案,但对于那些基于.NET,并且能够实现OO业务模型和商业逻辑的中间层应用,NHibernate是最有用的。NHibernate可以助用户消除或者包装那些针对特定厂商的SQL代码,并且用户把结果集从表格式的表示形式转换成一系列的对象。   NHibernate一个目前应用的最广泛的开放源代码的对象关系映射框架,它对Java的JDBC(类似于ADO.Net)进行了非常轻量级的对象封装,使得程序员可以随心所欲的使用对象编程思维来操纵数据库,目前在国内Java开发界已经颇为流行,Hibernate+Spring往往是很多Java公司招聘的要求。而NHibernate,顾名思义,如同NUnit,NAnt一样,是基于.Net的Hibernate实现,但是目前介绍NHibernate的资料非常少,缺少一个系统完整的教程来全面的展现和深入NHibernate,而且现在NHibernate的文档又残缺不全,少的可怜,很多NHibernate的学习者往往都是通过Hibernate的文档来学习,但是毕竟不是所有的.Net开发者都熟悉Java,也不是所有的人都有精力有时间去学习Java,所以,我准备开始一个Step by Step的NHibernate教程,以便有兴趣的朋友能够快速的熟悉NHibernate,能够更快地体验NHibernate的开发乐趣。   NHibernate一个基于.Net 的针对关系型数据库的对象持久化类库。Nhibernate 来源于非常优秀的基于Java的Hibernate 关系型持久化工具。   NHibernate 从数据库底层来持久化你的.Net 对象到关系型数据库。NHibernate 为你处理这些,远胜于你不得不写SQL去从数据库存取对象。你的代码仅仅和对象关联,NHibernat 自动产生SQL语句,并确保对象提交到正确的表和字段中去。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧