zoukankan      html  css  js  c++  java
  • 自学EF一些小笔记

    一直在用DHhelper做MVC,感觉好山寨,也不怎么好用。决定开始学EF。

    废话不多说开始记笔记。。。。。

    EF就是把数据库表,存储过程,视图实例化,通过继承DbContext的一个类来操作数据实例。

    创建EF:

    实体连接字符串一般选“是”。

    这里只勾选需要用到的表,视图和存储过程。

    然后就是下一步,下一步,就完成了EF的创建。

    EF一般在MVC项目的Model文件夹下,也就是MVC中的model。

    使用EF:

    有了EF后,Controller就直接可以通过调用继承DbContext类的方法来操作数据库。

     查询:

    Controller部分

    ksoa_lsddEntities db = new ksoa_lsddEntities();     //实例化DbContext对象
                List<spkfk> ls = db.spkfk.AsQueryable().ToList();   //查询表,返回表集合
                return View(ls);

    View部分

    @model List<EFtest.Models.spkfk>
    
    @{
        Layout = "~/Views/template/_tamplate.cshtml";
    }
    
    <table>
        @foreach (EFtest.Models.spkfk i in Model) 
        {
            <tr>
                <td>
                    @i.spmch
                </td>
            </tr>
        }
    </table>

    新增:

    Controller部分

                testEFEntities db = new testEFEntities();   //实例化DbContext对象
                EFtable e = new EFtable();      //创建新增实例对象
                e.goodscode = "YC01";           //新增对象属性赋值
                e.goodsname = "乙醇";           //新增对象属性赋值
                db.EFtables.Add(e);             //新增对象添加到实例化对象集合
                db.SaveChanges();               //把修改后的集合保存到数据库
    SaveChanges()这个方法很重要,对数据库增删改操作完后都要SaveChanges()把操作在保存到数据库,SaveChanges()返回数据库受影响行数,该操作执行后数据库多少条数据受影响

    增删改不需要在View做操作。

    修改:

    Controller部分

    testEFEntities db = new testEFEntities();   //实例化DbContext对象
                EFtable e = db.EFtables.Find(1);//通过主键找到要修改的数据对象并将其实例化
                e.goodsname = "修改后";        //给需要修改列的属性赋值
                db.SaveChanges();       //保存操作到数据库

    修改需要通过Find方法找到需要修改的数据对象,并实例化该对象。

    删除:

    Controller部分

    testEFEntities db = new testEFEntities();   //实例化DbContext对象
                EFtable e = db.EFtables.Find(1);  //找到需要删除的数据列对象并实例化
                db.EFtables.Remove(e);      //将指定删除对象移除数据表对象集合
                db.SaveChanges();       //操作保存到数据库 

    删除与修改类似,删除需要调用remove方法执行。

  • 相关阅读:
    monkey事件简介
    Monkey简介
    Package与Activity简介
    adb 命令
    安卓模拟器简介
    iis重启的几种方法
    window下安装FTP服务器
    防止dedecms注入文件挂马的解决方法
    织梦漏洞可疑PHP文件/article文件夹
    织梦Dedecms系统可疑文件include/filter.inc.php扫描出漏洞,该如何解决?
  • 原文地址:https://www.cnblogs.com/MirageFox/p/4817270.html
Copyright © 2011-2022 走看看