【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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • beescms网站渗透测试和修复意见「建议收藏」

    beescms网站渗透测试和修复意见「建议收藏」beescms网站渗透测试目录1.环境搭建2.渗透前信息收集3.开始渗透Beescms实验环境搭建1、官方下载Beescmsv4.0,下载地址:http://beescms.com/cxxz.html2、解压压缩文件,然后把文件放到phpstudy的网站根目录3、浏览器访问http://127.0.0.1/beescms/install,开始安装4、一直下一步,出现如下界面,输入数据库账户密码5、成功安装6、修改mysql.ini文件,在mysqld下添加条目:secu

    2022年6月21日
    54
  • pycharm 2021.11.3 激活码[最新免费获取][通俗易懂]

    (pycharm 2021.11.3 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1M3Q9SD5XW-eyJsaWNlbnNlSWQi…

    2022年3月28日
    168
  • DHCP中继代理_三层交换机配置dhcp中继

    DHCP中继代理_三层交换机配置dhcp中继实验目的:1.无中继代理时,DHCP向客户端发送地址段和接收接口地址相同的网段,如果不存在相同网段,就会丢弃请求数据包.2.有中继代理时,服务器能够发送正确IP地址给客户端,是因为有一个被称为option82的选项,这个选项只要DHCP请求数据包被中继后便会自动添加,此选项,中继路由器会在里面的giaddr位置写上参数,这个参数,就是告诉服务器,客户端需要哪个网段的IP地址才能正常工作。…

    2022年10月15日
    2
  • win10笔记本:掉帧卡顿、开机后卡顿、玩游戏帧数低、GPU占用率上不去,解决办法

    win10笔记本:掉帧卡顿、开机后卡顿、玩游戏帧数低、GPU占用率上不去,解决办法win10笔记本:掉帧卡顿、开机后卡顿、玩游戏帧数低、GPU占用率上不去,解决办法

    2022年6月15日
    74
  • SqlSessionTemplate是如何保证MyBatis中SqlSession的线程安全的?「建议收藏」

    SqlSessionTemplate是如何保证MyBatis中SqlSession的线程安全的?「建议收藏」一、DefaultSqlSession的线程不安全性在MyBatis架构中SqlSession是提供给外层调用的顶层接口,实现类有:DefaultSqlSession、SqlSessionManager以及mybatis-spring提供的实现SqlSessionTemplate。默认的实现类为DefaultSqlSession如。类图结构如下所示:对于MyBatis提供的原生实现类来…

    2022年5月31日
    36
  • SQL2008安装教程

    SQL2008安装教程1、首先,在安装文件setup.exe上,单击鼠标右键选择”以管理员的身份运行”,如下图所示:2、首先单击安装光盘中的setup.exe安装文件,打开如下所示的”SQLServer安装中心”对话框:3、选择左边的安装选项,单击右边的”全新SQLServer独立安装或向现有安装添加功能”选项,如图所示:4、在打开的”SQLServer2

    2022年6月23日
    23

发表回复

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

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