首页 > 代码库 > 校园视频管理-EF框架基础

校园视频管理-EF框架基础

       最近在做一个新的项目,俗话说在实践中成长,确实是成长不少。新的知识接踵而来,最近帮助我们组长搭框架的时候,学习到了EF的知识,下面总结一下。

        一,ORM和EF的关系

              ORM:帮助我们开发人员跟踪实体的变化,并将实体的变化翻译成sql脚本,并执行到数据中去,也就是将实体的变化映射到了表的变化。

              EF:跟踪实体变化,把变化映射到表中。

              关系:ORM是一种思想,EF是实现这种思想的框架。

        二,实战-从数据库中获取实体

                (1)在新建的项目中新建:ADO.NET实体数据模型

                  技术分享

               (2)选择从数据库生成

                   技术分享

              (3)与自己想要映射的数据库进行连接

                   技术分享

                   技术分享

                    技术分享

                     技术分享

                      技术分享

           点击完成,这样数据库中的东西就会映射到自己所建项目的实体中。如图:

                        技术分享

           三,编写代码

//所有对数据库的操作第一步就是创建数据库上下文。voteEntities是从Model1.Designer.cs中上下文的类名。
            voteEntities dbContext = new voteEntities();

            #region 添加实体
                //voteDeltails指的是数据库中表的名字
                voteDeltails vote = new voteDeltails();
                //给字段添加记录
                vote.voteDetailsID = 5;
                vote.voteID = 2;
                vote.voteItem = "傻牛";
                vote.voteNum = 4;

                //往这个实体的集合中添加数据(往dbContext指向的数据库中的voteDeltails表中添加一条数据vote。)
                dbContext.voteDeltails.AddObject(vote);

                dbContext.SaveChanges(); //真正的保存到数据库中。
            #endregion
         结果:(1) 原来数据库中的数据:

                       技术分享

           (2)执行代码后的数据:

              技术分享

             执行完成后多了一条儿数据。

             四,优点

                  (1)更有利于面向对象思想,直接操作实体而不是数据库。降低面向数据的应用程序所需的代码量并减轻维护工作。

             (2)EF上下文管理,保证线程唯一。

             现在刚刚开始,研究还在继续。

校园视频管理-EF框架基础