• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

EF之DBFirst数据库先行

mysql 搞代码 4年前 (2022-01-09) 15次浏览 已收录 0个评论

在上篇文章中,宏观的了解了EF的概念和类型,下面就来讲讲关于DBFirst(数据库先行)的详细步骤吧。 DatabaseFirst就是围绕数据库为中心的开发方式,使用这种模式我们必须要先设计和创建数据库,然后使用VS在已有数据库的基础上创建ADO.NET实体数据模型,之

在上篇文章中,宏观的了解了EF的概念和类型,下面就来讲讲关于DBFirst(数据库先行)的详细步骤吧。

DatabaseFirst就是围绕数据库为中心的开发方式,使用这种模式我们必须要先设计和创建数据库,然后使用VS在已有数据库的基础上创建ADO.NET实体数据模型,之后就可以在编程的过程中使用EF访问和操作数据库里的数据了,具体的如何使用,下面来看一个很简单的例子。

因为是数据库先行就先来看看高校云平台的数据库吧:


这张表是我做新生入学配置学号的一张表,下面我们来建立一个简单的控制台程序:

打开VS2012,选择控制台程序:

然后在项目中添加ADO实体模型:

右键添加,选择新建项:

选择ADO实体模型:

选择模型类型:

如果是第一次新建EF模型,请看下面的步骤:

如下图所示:

测试成功后,点击确定:

这里面包括表,视图等。因为我想建立一张表(也可以建立多张表)

点击完成,这就是我们想要的效果图:

最后我就通过操作实体来同步数据库中的数据,如图这是我操作前数据库表中的数据内容:

编写代码:

<pre class="csharp">using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DBFirst{    class Program    {        static void Main(string[] args)        {            FreshEntities dbContext = new FreshEntities();            FreshNumberCon<em>本文来源[email protected]搞@^&代*@码)网5</em>figEntity freshNumber = new FreshNumberConfigEntity();            //必须给所有属性赋值            freshNumber.Name = "徐志鹏";            freshNumber.Id = 1;            freshNumber.Sort = 3;            freshNumber.IsUse = 0;            freshNumber.Length = 3;            freshNumber.TimeSpan = DateTime.Now;            freshNumber.IsDelete = 0;            //实体的跟踪然后修改实体状态            dbContext.Entry(freshNumber).State = System.Data.EntityState.Modified;            ////查询出来的实体:默认就是被跟踪状态            //var item = dbContext.FreshNumberConfigEntity.FirstOrDefault();            //item.Name = "学院码";//只要改属性,那么就会自动将此实体的状态改为modify            dbContext.SaveChanges();        }    }}


编译执行,再看看数据库中的数据:

上面演示的只是修改的一个小功能,EF的强大机制还有待于读者动手实践和操作!

这样我们就实现了通过对实体的增删改查实现了实体和数据库的同步,是不是有一种高大上的感觉呢?


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:EF之DBFirst数据库先行

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址