Entity Framework应用:使用EF的DataBase First模式实现数据库的增删改查
在上一篇文章中讲解了如何生成EF的DBFirst模式,接下来讲解如何使用DBFirst模式实现数据库数据的增删改查
一、新增数据
新增一个Student,代码如下:
static void Add()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 定义Student对象
Student stu = new Student()
{
StudentName = "花千骨",
Sex = "女",
Age = ,
Major = "舞蹈专业",
Email = "2345678911@qq.com"
};
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 只是内存上面的操作
dbContext.Students.Add(stu);
// 保存的数据库
dbContext.SaveChanges();
Console.WriteLine("保存成功");
}
}
在Main()方法里面调用Add()方法,结果:

查看数据库结果:

从上面的两个截图中可以看出数据新增成功。
二、查询数据
查询StudentName是唐僧的学生信息并输出:
static void Query()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
List<Student> list = dbContext.Students.Where(p => p.StudentName == "唐僧").ToList<Student>();
list.ForEach(p =>
{
Console.WriteLine("姓名:"+p.StudentName+",年龄:"+p.Age+",专业:"+p.Major+",邮箱:"+p.Email);
});
}
}
在Main()方法里面调用Query(),结果:

三、修改数据
修改StudentName为花千骨的学生年龄:
static void Edit()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 查询要修改的数据,FirstOrDefault表示查询到的第一条数据
Student student = dbContext.Students.Where(p => p.StudentName == "花千骨").FirstOrDefault();
// 保存修改
student.Age = ;
dbContext.SaveChanges();
Console.WriteLine("修改成功");
}
}
结果:

查看数据库数据:

四、删除数据
删除新添加的数据:
static void Delete()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 先查询然后在删除
Student stu = new Student()
{
StudentID=
};
// 附加到集合中
dbContext.Students.Attach(stu);
// 删除的SQL语句是根据stu的StudentID生成的
dbContext.Students.Remove(stu);
// 保存
dbContext.SaveChanges();
Console.WriteLine("删除成功");
}
}
结果:

查看数据库:

数据删除成功。
Entity Framework应用:使用EF的DataBase First模式实现数据库的增删改查的更多相关文章
- Asp.net MVC4 使用EF实现数据库的增删改查
		
EF的使用 步骤: (1)将EF添加到项目:在Model右击添加新建项 找到ADO.NET实体数据模型,接着... (2)实现数据库的增删改查 查询 (因为在Model中已经添加EF实体了 ...
 - 使用EF实现数据库的增删改查
		
EF的使用步骤:(1)将EF添加到项目:在Model右击添加新建项找到ADO.NET实体数据模型,接着…(2)实现数据库的增删改查查询(因为在Model中已经添加EF实体了,所以就可以在Control ...
 - Entity - 使用EF框架进行增删改查 - 模型先行
		
模型先行:先创建数据库实体模型,然后再进行数据库的增删改查. 基本步骤是不变的,可参照 <Entity - 使用EF框架进行增删改查 - 数据库先行> 其中的不同是,在创建数据库实体模型的 ...
 - EF增删改查的优化
		
在EF的上一篇博客中已经对它的增删改查有了一个简单的了解.当中的改动过程是先要把要改动的内容查出来然后再进行改动.保存.它详细的过程是这种 首先当在运行查询语句的时候"EF数据上下文&quo ...
 - MySQL在DOS界面对database和table增删改查
		
昨天新接触MySQL,学习了一些内容,今天过来复习一下.(吐槽一下:安装个MySQL耗费老子半天时间!!) 学习了一下,大概知道了对数据库基本的增删改查,增add,删drop,改alter,查show ...
 - 使用ASP.NET Core MVC 和 Entity Framework Core 开发一个CRUD(增删改查)的应用程序
		
使用ASP.NET Core MVC 和 Entity Framework Core 开发一个CRUD(增删改查)的应用程序 不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻 ...
 - Entity Framework DBContext 增删改查深度解析
		
Entity Framework DBContext 增删改查深度解析 有一段时间没有更新博客了,赶上今天外面下雨,而且没人约球,打算把最近对Entity Framework DBContext使用的 ...
 - entity framework 新手入门篇(2)-entity framework基本的增删改查
		
经过前两节的简单描述,终于可以进入entity framework的使用部分了.本节将对entity framework原生的增删改查进行讲解. 承接上面的部分,我们有一个叫做House的数据库,其中 ...
 - Entity Framework 实体框架的形成之旅--几种数据库操作的代码介绍(9)
		
本篇主要对常规数据操作的处理和实体框架的处理代码进行对比,以便更容易学习理解实体框架里面,对各种数据库处理技巧,本篇介绍几种数据库操作的代码,包括写入中间表操作.联合中间表获取对象集合.递归操作.设置 ...
 
随机推荐
- 将Android Studio默认布局ConstraintLayout切换成LinearLayout
			
将Android Studio默认布局ConstraintLayout切换成LinearLayout 大部分人初次使用google android 扁平化布局ConstraintLayout都 ...
 - Hadoop JobTracker和NameNode运行时参数查看
			
1)JobTracker运行时参数: hadoop@ubuntu:/home/zhangchao3$ ps -ef | grep job hadoop 29563 1 0 11:34 pts/12 ...
 - linux分享二:Linux如何修改字符集
			
问题: 当在项目中用到服务器端导出并且查询条件中包含汉字时,总是导出失败,Excel中出现null字样,如何解决方法呢? 解决方法: 把linux的字符集改变一下. 路径:etc/sysconfig/ ...
 - UITableView/UIScrollView 不能响应TouchBegin 的处理 及窥见 hitTest:withEvent:
			
重写touchBegin 方法是不行的,在UITableView/UIScrollView 解决方案 重写hitTest:withEvent: 在他们的子类中 - (UIView *)hitTest ...
 - 【转】在 XAML 的属性中,转义大括号 {}
			
我们知道大括号"{}"在XAML中是用来处理标记扩展的. 比如: <Button Content="{Binding}"/> 但如何转义而表示普 ...
 - 为jqgrid添加统计金额页脚
			
为jqgrid增加自定义用户数据 设计统计的金额总和 最后在jgrid组件中添加 最后的效果为:
 - 解决 emoji表情存入数据库为' ??? '
			
今天把mysql切换为mariaDB,这是题外话 主要是emoji标签存入数据库会发现出现三个???的问题 页面上也显示不出来,解决办法只要把内容从数据库里拿出来的时候解码即可 for (Feedba ...
 - ASP.NET MVC中全局异常处理
			
以前不知道从哪里找到的处理全局异常的,觉得蛮好用就记下来了. 1, 建立MyExecptionAttribute.cs类,写入如下代码: using System; using System.Coll ...
 - npm WARN build `npm build` called with no arguments. Did you mean to `npm run-script build`?
			
跑npm build结果如下: npm WARN build `npm build` called with no arguments. Did you mean to `npm run-script ...
 - 按键精灵与逍遥安卓ADB连接重键方法
			
1.按键精灵与逍遥安卓ADB连接安装按键精灵与逍遥安卓这两个软件我不用多说了.安装好后把逍遥安卓安装目录下的三个文件adb.exe,AdbWinApi.dll,AdbWinUsbApi.dll 全部复 ...