ASP.NET MVC- EF基础

  

  EF是在ADO.NET的基础上做进一步封装,以后如果做新的项目我可能会考虑不用ADO.NET,而用EF。

  其实很久以前我就接触过EF,可是太久没用,有些忘记了,前几天重温,也做了一点笔记。记录如下:

  

  

  1.怎么创建EF不说了,看一下创建EF后,打开EF的XML文件是怎样的。

  首先右键,选择打开方式为XML文本

  

 

  折叠后这里的 SSDL Content定义的是SqlServer里的数据库字段
         CSDL Content定义的是类的属性字段
         CS MAPPING  定义的是数据库字段与类的属性字段间的映射

 

  

  2.看一下tt模板

  

  以前EF没有tt模板,现在加了,如果看得懂源码,是可以修改他的代码生成规则的,不过一般情况不用修改到它。

  这里的ModelGuestBook.Context.tt后缀的是生成对象接口的代码

  这里的ModelGuestBook.tt后缀的是生成Model类的代码。

 

  3.看一下EF生成的数据库连接字符串

<add name="CcxDemoEntities" connectionString="metadata=res://*/ModelGuestBook.csdl|res://*/ModelGuestBook.ssdl|res://*/ModelGuestBook.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=CcxDemo;User ID=sa;Password=123456;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

  

  加入了映身后变得长了许多。还是要以清楚看得数据库是改里,密码和用户名是改里,IP是改哪里的。

 

  4.看一下增删查改的用EF的实现,变得多简洁

 CcxDemoEntities db = new CcxDemoEntities();
        
        protected void Page_Load(object sender, EventArgs e)
        {
            
        }
        //新增
        protected void Button1_Click(object sender, EventArgs e)
        {
            gBook_Message gbookObj = new gBook_Message();
            gbookObj.username = "ccx";
            gbookObj.body = "hello world";
            gbookObj.ip = "127.0.0.1";
            gbookObj.createdate = DateTime.Parse("2014-12-12");
            
            db.gBook_Message.Add(gbookObj);
            db.SaveChanges();

            Response.Write("ok!!");

        }
        //修改
        protected void Button2_Click(object sender, EventArgs e)
        {
            //将对象查找出来
            var gbookObj = db.gBook_Message.Where(g => g.username == "ccx").FirstOrDefault();
            //修改的内容
            gbookObj.username = "chunxiao";
            //执行修改
            db.SaveChanges();


        }
        //删除
        protected void Button3_Click(object sender, EventArgs e)
        {
            gBook_Message gbookObj = new gBook_Message();
            gbookObj.id = 1;
            //将对象加进来
            db.gBook_Message.Attach(gbookObj);
            //标记为删除
            db.gBook_Message.Remove(gbookObj);
            //执行删除
            db.SaveChanges();
        }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。