700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easy

开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easy

时间:2019-10-29 00:30:25

相关推荐

开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easy

开源框架完美组合之 + NHibernate + MVC + jQuery + easyUI 中英文双语言小型企业网站Demo,这个是一个在网上流传比较多的和NHibernate的案例,该项目组合了多个框架,可作为实际项目的框架,学习也是很好的例子;原作者是一个叫刘冬的程序员。下面鄙人对该项目做一些分析,以便找到可以直接拿来用的东西。

源码下载:

/s/1pJJW4Fh

首先运行起来看一下,包括五个项目,如下图;

先找一下有没有附带数据库;没有的话运行不起来看不到效果;在WebSite项目的App_Data目录下有数据库;

看一下该数据库,后缀.db,那么可能是SQLite的数据库;用SQLite3载入该db文件,显示一下表;有四张表;但是表的内容乱码;可能是SQLite的中文支持问题;

用SQLite的图形管理工具载入该db文件,可看到表的内容;

现在数据库有了;运行一下;显示如下图的错误;该项目用了多个框架,此错误显然是NHibernate方面的错误;

以下是堆栈;显示错误跟System.Data.SQLite.dll有关;

网页上给出的错误提示;应该是缺少System.Data.SQLite.dll;

在网上下载一个System.Data.SQLite.dll;添加到项目引用;

再运行,还是同样的错误提示;当然可以追踪堆栈具体分析;不过根据经验这是NHibernate配置和数据库版本不兼容的问题;

看下项目的SQLite配置节;

<!--SQLite-->

<add key="provider" value="System.Data.SQLite" />

<add key="connectionString" value="Data Source=|DataDirectory|DataBase.db;Version=3;FailIfMissing=False;" />

<add key="dialect" value="NHibernate.Dialect.SQLiteDialect" />

<add key="driver_class" value="NHibernate.Driver.SQLite20Driver" />

NHibernate配置数据库驱动时,如上最后一行,相同数据库的不同版本,其驱动程序的名称略有不同;这是比较搞的一个地方;如此处不同SQLite版本,可能写"NHibernate.Driver.SQLite20Driver",也可能写“NHibernate.Driver.SQLiteDriver”;试着改变这个地方;还是相同的错误;

当然这个地方有不同的解决方法;不过最方便的还是引用合适版本的System.Data.SQLite.dll; 在网上下了几个dll,均版本过高;这个地方需要版本低于1.7以下才行;才能用

NHibernate.Driver.SQLite20Driver 这个字符串;后来我下到一个合适的DLL;再运行,一切正常,出现了首页。我所附源码中包含1.0.65.0版本的dll,项目可直接运行。OK,拿去花吧。

开源框架完美组合之 + NHibernate + MVC + jQuery + easyUI 中英文双语言小型企业网站Demo项目分析

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。