【EF】DbFirst实现增删改查

【EF】DbFirst实现增删改查【EF】DbFirst实现增删改查

大家好,又见面了,我是你们的朋友全栈君。

1.在VS中新建控制台应用程序

【EF】DbFirst实现增删改查

2.右击刚刚建好的程序,添加“ADO.NET实体数据模型”

【EF】DbFirst实现增删改查

【EF】DbFirst实现增删改查

3.选择“来自数据库的EF设计器”

【EF】DbFirst实现增删改查

【EF】DbFirst实现增删改查

4.依次连接服务器和数据库

【EF】DbFirst实现增删改查

5.选择包括敏感数据

【EF】DbFirst实现增删改查

6.选择实体框架(5.0)。(6.x也可以试试)

【EF】DbFirst实现增删改查

7.选择需要的数据表等内容,点击完成!

【EF】DbFirst实现增删改查

这样database first的实现已经基本上完成了,如果想要用ModelFirst的方式,在第3步选择”空EF设计器模型“,在edmx文件中自己添加数据表即可。接下来通过代码来实现对数据库的操作。不管是DBFirst,ModelFirst还是CodeFirst,代码都是通用的。

1.添加实体

            //所有对数据库操作的第一步就是创建数据库访问的上下文
            newssystemEntities dbContext = new newssystemEntities();

            #region 添加实体
            category ca = new category();

            ca.name = "教育新闻";
            //在dbContext指向的数据中的Category表添加一条数据ca
            dbContext.category.Add(ca);
            //保存到数据库
            dbContext.SaveChanges();
            #endregion

2.修改、删除实体

            //修改此实体
            //1.将当前实体附加到上下文来进行管理
            dbContext.category.Attach(ca);
            //2.把上下文dbContext跟踪的实例:branch的状态改成修改状态
            //将Modified改为删除即可删除实体
            dbContext.Entry<category>(ca).State = System.Data.Entity.EntityState.Modified;
            dbContext.SaveChanges();
            #endregion

3.查询实体

            #region 普通查询

            foreach (var ca in dbContext.category)
            {
                Console.WriteLine(string.Format("id:{0} name:{1}", ca.id, ca.name));
            }
            #endregion

            #region 查询 linq语句
            //linq表达式:IQuerable类型
            IQueryable <category>  item = from b in dbContext.category where b.id < 24 select b;
            foreach (var ca in item)
            {
                Console.WriteLine(ca.id + ca.name);
            }
            #endregion

            Console.ReadKey();

    这样就完成了增删改查,可以发现,我们以前操作数据库的SQL语句没有了。对于EntityFramework给我们带来的好处,接下来分享给大家。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105738.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux发送邮件命令_java实现邮件发送功能

    linux发送邮件命令_java实现邮件发送功能第一步,安装mail服务检测系统是否安装了mail服务[root@centos8~]#rpm-qf/usr/bin/mailerror:file/usr/bin/mail:Nosuchfileordirectory刚开始我的系统就没有mail服务,使用“yum-yinstallmailx”安装时有一只报错,提示“Error:Failedtodownloadmetadataforrepo‘appstream’:Cannotprepareinterna

    2022年10月20日
    4
  • Ubuntu(20.04)中安装Pycharm(2020.1.2)详细教程「建议收藏」

    Ubuntu(20.04)中安装Pycharm(2020.1.2)详细教程「建议收藏」一、下载并解压Pycharm1、官网下载:https://www.jetbrains.com/pycharm/download/#section=linux学习使用,下载community版本即可2、下载下来是tar.gz格式,将文件传入到虚拟机中。vmware安装了增强功能可直接拖拽。如果无法使用,则可以设置共享文件夹,可自行网上搜索。共享后的文件夹在ubuntu中的目录位置是:/mnt/hgfs/你设置的共享文件夹3、将文件复制(cp)或移动(mv)到/opt文件目录下。并解压(ta

    2022年8月26日
    11
  • php安装make出现“collect2:error:ldreturned1exitstatus

    php安装make出现“collect2:error:ldreturned1exitstatusphp安装make出现“collect2:error:ldreturned1exitstatus

    2022年4月24日
    127
  • MSDN Windows 7 旗舰版 序列号

    MSDN Windows 7 旗舰版 序列号 GTWV3-KH84H-M94BG-PVT2W-JFPRW89Q2G-GBRGH-KFWRJ-Q72FD-GHYB7J3X6R-HPF6X-FQRDR-WTPM7-J92GK7KG4K-T2PTK-8YGQT-QX68X-RGRQ3TQMMV-43FFG-RGXMY-KMVFY-MB8JW8483D-TTKCX-CTDR6-XQXTH-X9JG4BVFKK-9X3FC-XPF4D-W8GTF

    2022年7月20日
    20
  • 什么是是JAVA构造函数

    什么是是JAVA构造函数每创建一个类的实例都去初始化它的所有变量是乏味的。如果一个对象在被创建时就完成了所有的初始工作,将是简单的和简洁的。因此,Java在类里提供了一个特殊的成员函数,叫做构造函数(Constructor)。一个构造函数是对象被创建时初始对象的成员函数。它具有和它所在的类完全一样的名字。一旦定义好一个构造函数,创建对象时就会自动调用它。构造函数没有返回类型,即使是void类型也没有。这是因为…

    2022年7月8日
    25
  • 二叉查找树实现原理分析

    二叉查找树实现原理分析

    2022年3月2日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号