一、EF数据查询
假设我们已经定义好了context:
private AccountContext db = new AccountContext();

1、[基本查询] 查询所有
var users = from u in db.SysUsers
  select u;

users = db.SysUsers;

2、[条件查询] 加入查询条件
users = from u in db.SysUsers
where u.UserName == "Tom"
select u;

users = db.SysUsers.Where(u => u.UserName == "Tom");

3、[排序和分页查询]
users = (from u in db.SysUsers
orderby u.UserName
select u).Skip(0).Take(5);

users = db.SysUsers.OrderBy(u => u.UserName).Skip(0).Take(5);

NOTE:只有排序了才能分页

4、[聚合查询]
//查user总数
var num = db.SysUsers.Count();
//查最小ID
minId = db.SysUsers.Min(u => u.ID);

NOTE:聚合查询只能通过函数式查询

5、[连接查询]
var users = from ur in db. SysUserRoles
join u in db. SysUsers
on ur.SysUserID equals u.ID
select ur

二、EF数据更新
数据更新,分三步:找到对象--> 更新对象数据--> 保存更改
public ActionResult EFUpdateDemo()
{
    //1.找到对象
    var sysUser = db.SysUsers.FirstOrDefault(u => u.UserName == "Tom");

//2.更新对象数据
    if (sysUser != null)
    {
        sysUser.UserName = "Tom2";
    }

//3.保存修改
    db.SaveChanges();

return View();
}

三、EF数据添加/删除
与UPDATE类似。
public ActionResult EFAddOrDeleteDemo()
{
    //添加
    //1.创建新的实体
    var newSysUser = new SysUser()
    {
        UserName = "Scott",
        Password = "tiger",
        Email = "Scott@sohu.com"
    };
    //2.增加
    db.SysUsers.Add(newSysUser);
    //3.保存修改
    db.SaveChanges();

//删除
    //1.找到需要删除的对象
    var delSysUser = db.SysUsers.FirstOrDefault(u => u.UserName == "Scott");
    //2.删除
    if (delSysUser!=null)
    {
        db.SysUsers.Remove(delSysUser);
    }
    //3.保存修改
    db.SaveChanges();

return View("EFQueryDemo");
}

EF入门-CRUD操作的更多相关文章

  1. ASP.NET Core MVC+Layui使用EF Core连接MySQL执行简单的CRUD操作

    前言: 本章主要通过一个完整的示例讲解ASP.NET Core MVC+EF Core对MySQL数据库进行简单的CRUD操作,希望能够为刚入门.NET Core的小伙伴们提供一个完整的参考实例.关于 ...

  2. MyBatis入门学习教程-使用MyBatis对表执行CRUD操作

    上一篇MyBatis学习总结(一)--MyBatis快速入门中我们讲了如何使用Mybatis查询users表中的数据,算是对MyBatis有一个初步的入门了,今天讲解一下如何使用MyBatis对use ...

  3. Entity Framework 程序设计入门二 对数据进行CRUD操作和查询

    前一篇文章介绍了应用LLBL Gen生成Entity Framework所需要的类型定义,用一行代码完成数据资料的读取, <LLBL Gen + Entity Framework 程序设计入门& ...

  4. 8天掌握EF的Code First开发系列之2 简单的CRUD操作

    本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 创建控制台项目 根据.Net中的类来创建数据库 简单的CRUD操作 数据库模式更改介绍 本章小结 本人的实验环境 ...

  5. sitecore开发入门Sitecore的CRUD操作 - 第二部分

    在上一篇(sitecore开发入门Sitecore的CRUD操作 - 第一部分)中我们讨论了如何使用Sitecore Item API,Glass,Fortis和Synthesis在Sitecore中 ...

  6. Spring Data MongoDB 一:入门篇(环境搭建、简单的CRUD操作)

    一.简介 Spring Data  MongoDB 项目提供与MongoDB文档数据库的集成.Spring Data MongoDB POJO的关键功能区域为中心的模型与MongoDB的DBColle ...

  7. SpringData JPA快速入门和基本的CRUD操作以及Specifications条件查询

    SpringData JPA概述: SpringData JPA 是 Spring 基于 ORM 框架.JPA 规范的基础上封装的一套JPA应用框架,可使开发者用极简的代码即可实现对数据库的访问和操作 ...

  8. hibernate入门-基本配置及简单的crud操作

    框架来说主要是需要写大量的配置文件,hibernate相比mybatis来说更强大,移植性更好: 1.类和数据库的映射配置:配置文件命名一般--类名.hbm.xml (user.hbm.xml),与实 ...

  9. elasticsearch入门(简单的crud操作)

    记录一下,elasticsearch从创建索引到插入数据的一个crud操作. 一.创建索引 curl -XPUT "http://192.168.99.1:9200/productindex ...

随机推荐

  1. 【软件工程】Alpha冲刺(4/6)

    链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 学习调用中国天气网API,接近实现天气推送功能 对天气推送的形式进行讨论及重确 ...

  2. LeetCode 复原IP地址(探索字节跳动)

    题目描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11.135&qu ...

  3. Kbengine游戏引擎-【2】kbengine引擎服务端目录结构分析

    |- kbengine (KBE_ROOT 根目录) |- demo (游戏例子工程的根目录) |- res (工程的所有资源) |- spaces (通常存放游戏场景相关的资源,例如Navmesh) ...

  4. springBoot2.X---过滤器,监听器,拦截器

    过滤器,监听器,拦截器 一.画图理解 过滤器(filter),监听器(listener),拦截器(Interceptor). 通过两幅图我们可以理解拦截器和过滤器的特点 1.过滤器 过滤器是在请求进入 ...

  5. easyUI之Messager(消息窗口)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  6. dede不同栏目调用不同banner图的方法

    用顶级栏目ID 方法: <img src="{dede:global.cfg_templets_skin/}/images/{dede:field.typeid function=&q ...

  7. React Native pod install报错 `Yoga (= 0.44.3.React)` required by `React/Core (0.44.3)`

    使用pod安装,可能会因为Podfile的路径指向错误或者没有路径指向因为报错. 报错截图如下: 这是因为在指定的路径没有寻找到相应的组件.此时就需要修改podfile文件中的路径,由于上方提示没有  ...

  8. Zookeeper白话解释

    官方的解释:Zookeeper提供了诸如统一命名空间服务,配置服务和分布式锁等分布式基础服务. 嗯,说上面这个话的人,良心不会痛吗? Zookeeper功能如上边说到的:统一命名空间服务 其他就tm跟 ...

  9. 关于安装Git后,项目目录右键菜单无Git Bash Here命令的选项

    修改注册表配置 1.第一步,window + R,输入regedit回车进入注册表 2.依次进入HKEY_CLASSES_ROOT --> Directory -->Background ...

  10. Opencv 简单视频播放器

    // C++ header and namespace #include <iostream> #include <string> #include <cstdlib&g ...