完成一个MVC+Nhibernate+Jquery-EasyUI信息发布系统
一、最近学习了Jquery-EasyUI框架,结合之前用过的MVC3+Nhibernate做一个信息发布系统,对工作一年半的自己做一个总结吧!(也正好 供初学者学习!)
二、先上截图(系统简介),让大家了解一下最近做的东西
1、登录页(系统登录后台的页面,用的Jquery-EasyUI中$.Dialog功能,登录之后使用FormsAuthenticationTicket进行验证!同时添加到Cookie中)
,
2、后台菜单页(使用Jquery-EasyUI的accordion,登录进入系统的时候有个权限的判断,是否该用户有左边菜单栏功能的权限)
3、用户管理(这个功能,包括:用户权限的分配,用户的查询),上面的Tabs页可以右键选择“关闭”选项。
更换主题: 选择自己喜欢的主题,下次进入系统时还是上次你选择的主题!
更换主题后的效果,下次进来之后还是上次选择的主题(本人还是喜欢“金属色"的,显的大气,哈哈!)
4、权限管理(功能:包括权限的增删改查,和模块管理是“多对一”的关系,其中搜索“权限名称”使用的是Jquery-EasyUI中combogrid,数据如果较多可以进行分页!)
5、新闻的发布(使用的是:Ckediter文本编辑器,上传图片用的是"Uploadify",无刷新上传,配置比较简单,添加完新闻之后,制作成静态页,减少服务器压力使用的是StreamWriter)
6、系统前台页面(网站常用的:QQ在线客服、天气状况(WebService调用),站内搜索(Lucene.Net)
带分页的站内搜索:步骤:1、建索引(Quartz.Net定时任务框架,每天几点进行索引,之前写过一个类似的文章 (http://www.cnblogs.com/tianxinbest/p/3210320.html))2、分词算法(有盘古分词、庖丁解牛),我用的是盘古分词,它不需要你敲空格键,自动帮你分词
7、让搜索的内容进行高亮显示(PanGu.HighLight)4、对搜索到的内容进行分页,防止内容过多(MVC自带的MVCPager,或者自己写也行。主要用到.Skip,和.Take)
8、项目结构如下:BLLs相当于业务逻辑层,Common包括常用的方法或者是一些扩展的方法,Models模型层,实体类,Repository数据访问层,之间与数据库打交道的,用的是ORM的NHbiernate,ORM思想结合NVC使用相当爽,就是NHbiernate配置比较麻烦,现在又流行FluentNHibernate。最后一个:Webs就是MVC框架了。
三、项目的大体框架先介绍到这里吧,代码以后会贴出来的,继续写下去,如果有兴趣,请关注我吧,也请点击右下角的“推荐”,让更多的朋友来学习!