“MVC+Nhibernate+Jquery-EasyUI”信息发布系统 第一篇

1、第一篇内容中必须得简单的介绍一下MVC(在大学时用的是WebForm,拖控件感受很爽,可是工做后,技术总监让必定要放弃这种 想法!)jquery

     一、MVC是什么?:(1) ASP.NET MVC是微软官方提供的MVC模式编写ASP.NET Web应用程序的一个框架数据库

                              (2) MVC是微软继ASP.NET WebForms后的有一种开发方式,并不是替代方式!session

     二、与WebForm的比较以后的好处:  架构

(1) 关注点分离app

(2)高可扩展性框架

(3)更好的可测试性编辑器

(4)更好的URL重写性能

(5)更好的性能学习

(6)更加灵活的HTML代码控制测试

(7)没有ViewState(这个在WebForm中很可怕,右键查看源代码以后,晕了....)

三、其实好处不止这些,概念性的东西不必过多的解释,园子里好多文章.....

2、上篇的文章也提到,与数据库的交互用的是Nhibernate,你们必定不陌生吧,一种ORM的思想,还有大家熟悉的EF、FluntNibernate,写完这篇会写个小的Demo,里面就包括NHibernate、EF中的CodeFirst(先写Model类,接着Db<Set>,前台数据绑定以后,打开数据库,就会发现生成一个带相似这样:项目名.Contenxt的数据库)仅供初学者学习。

        一、在项目中添加了一个NHibernateHelper类,其中方法包括像GetSession()这个方法返回的是ISession。

               项目中得安装Nugget包,Install-package Nhibernate 添加这个引用

           

          二、添加完以后:

        (1)往项目中添加MSSql.cfg.xml(“目录在\packages\NHibernate.3.3.1.4000\ConfigurationTemplates”)

          但要更名为hibernate.cfg.xml 右键属性:无,若是较新则复制

 (2)添加XML,举一个实体的例子来讲,如:Product.Hbm.xml,右键属性:不复制,嵌入的资源。

 (3)若是想要智能提示的话,在Product.Hbm.xml代码中右键属性:架构添加:nhibernate-configuration.xsd和nhibernate-mapping.xsd  

 (4)上面说的这些配置都是NHbiernate基础性的东西,建议看看“李永京”的博客。http://www.cnblogs.com/lyj/

 (5)如今能够创建一个NHibernateHelper类,建议在(TianxinWeb.Webs.Common)项目的目录在下面。可是记住:得在hibernate.cfg.xml中添加<mapping assembly="项目名称"/>      

        //返回ISession
        public static ISession GetCurrentSession()
        {
            //第一种方式:(不灵活,只能对于一个实体类控制)
            //var cfg = new Configuration().Configure().AddAssembly(typeof(Product).Assembly);

            //推荐使用第二种方式:
            //注意:在hibernate.cfg.xml中添加<mapping assembly="MvcApplication1"/>
            var cfg = new Configuration().Configure();            
            var sessionFactory = cfg.BuildSessionFactory();
            return sessionFactory.OpenSession();
        }

      (6)如今增删改查就均可以实现了。本身必定要试试,能够结合事务进行操做,仍是建议看看“李永京”的博客。

         三、添加四个个类库和一个MVC项目,分别是:TianxinWeb.Webs.BLLs、TianxinWeb.Webs.Common、TianxinWeb.Webs.Models、   TianxinWeb.Webs.Repositories和TianxinWeb.Webs.Webs。这四个类库的做用,前一篇文章已经说过,看命名也知道个大概。

         四、在TianxinWeb.Webs.Webs里添加jquery-easyui-1.3.二、还有经常使用的Ckediter编辑器,ZTree(后面讲到的”用户权限分配“用的就是它)在官网上下载就行,添加到项目中。

 

                                           

3、总结:

一、重点:必定要本身测试一下Nhibernate的功能,是否能增删改查影响到数据库,先把这个问题解决了,上面介绍的也挺清楚,若是实在调试不行,请  留言,帮你看看。

二、大致框架建起来了,媳妇打电话让回家吃饭了,也真有点饿了。呵呵。先写到这里吧,请朋友们继续关注下一篇文章。

相关文章
相关标签/搜索