遇到的问题,初次使用NHibernate遇到的问题

 2023-09-21 阅读 27 评论 0

摘要:[关键词]NHibernate、SQLite、MySQL 先是在Java下用了Hibernate,挺好用。正好需要用.net做一个桌面应用程序,数据存储这块自然就想到用它的.net版来做,没想到竟然碰到一堆问题, 特做此记录,留以备忘。 环境:VisualStudio2008、NH

[关键词]NHibernate、SQLite、MySQL   

        先是在Java下用了Hibernate,挺好用。正好需要用.net做一个桌面应用程序,数据存储这块自然就想到用它的.net版来做,没想到竟然碰到一堆问题, 特做此记录,留以备忘。

        环境:VisualStudio2008、NHibernate2.1.2 GA、SQLite.NET(用以加载System.Data.SQLite.dll)、MySQL Connector Net 5.2.5(用以加载MySql.Data.dll)。

        首先是SQLite数据库,主要问题可以参考此文:http://www.cnblogs.com/qing123/archive/2010/02/09/1666404.html 
主要是配置文件的问题。(注意:报错时请留意报错信息,并展开节点查看InnerException内的具体错误,这样才最有帮助,因为很多种错误最外层报的都是“Could not compile the mapping document”,很难发现问题

        接着是MySQL数据库,也碰到两个问题,好在通过InnerException查到详细错误,网上查了一下最终解决,数据终于顺利入库~~
        第一个是需要引用MySql.Data.dll,没有此文件者请到MySql官方网站下载mysql-connector-net-5.2.5.zip并安装之,即可在安装目录下找到。但仅仅引用是不行的,还需要把这个dll拷贝到项目的bin目录下,和NHibernate.dll放在一起(或者在工程里选中MySql.Data属性,把“复制本地”设置为True即可)。

        第二个问题是提示“列"ReservedWord"不属于表ReservedWords”。莫名其妙,我根本没有这个列和表啊?google之,原来需要在配置文件的<session-factory>节点内,加入<property name="hbm2ddl.keywords">none</property>即可。

        上述两步,MySql终于可用了,不过SQLite问题还没解决,稍候继续研究一下吧。

        解决MySql问题参考自:
http://9esuluciano.javaeye.com/category/15512?show_full=true
http://www.cnblogs.com/howard-queen/archive/2009/11/24/1609753.html

转载于:https://www.cnblogs.com/srliuhao/archive/2010/03/08/1680967.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/81045.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息