EntityFramework数据持久化复习资料4、Lambda表达式的使用(重点内容)

举报
红目香薰 发表于 2023/02/26 13:07:56 2023/02/26
【摘要】 ​ ​编辑EntityFramework数据持久化复习资料4、Lambda表达式的使用(重点内容)目录EntityFramework数据持久化复习资料4、Lambda表达式的使用(重点内容)前言开发环境Lambda表达式测试数据示例一、模糊查询有【龙】字的数据并遍历示例二、精准查询值等于【赵灵儿】的数据前言微软官方提供的ORM工具,ORM让开发人员节省数据库访问的代码时间,将更多的时间放到业...

 编辑

EntityFramework数据持久化复习资料4、Lambda表达式的使用(重点内容)


目录

EntityFramework数据持久化复习资料4、Lambda表达式的使用(重点内容)

前言

开发环境

Lambda表达式

测试数据

示例一、模糊查询有【龙】字的数据并遍历

示例二、精准查询值等于【赵灵儿】的数据



前言

微软官方提供的ORM工具,ORM让开发人员节省数据库访问的代码时间,将更多的时间放到业务逻辑层代码上。开发人员使用Linq语言,对数据库操作如同操作Object对象

一样省事。EF有三种使用场景,1. 从数据库生成Class,2.由实体类生成数据库表结构,3.通过数据库可视化设计器设计数据库,同时生成实体类。

ORM (对象关系型映射)是将数据存储从域对象自动映射到关系型数据库的工具。ORM主要包括3个部分:域对象、关系数据库对象、映射关系。ORM使类提供自动化CRUD,使

开发人员从数据库API和SQL中解放出来。以前是使用ADO.NET来进行对数据库中得数据表进行操作,现在,使用ORM直接对对象进行操作,操作对象就等于操作数据库表,

那怎么让对象和数据库表一一对应起来?这个过程就是通过ORM框架来完成的,操作对象就是操作数据库也是通过ORM来完成的。ORM框架就是做对象和数据库的映射的。

那么EntityFramework的作用是什么?

我的理解就是大大简化数据库操作的,举个例子:在没有使用EF前,我们要编写复杂的SQL语句,而使用了EF之后,将会减少编写复杂的SQL语句过程。

开发环境

系统环境:win7及以上,本示例环境win11

开发工具:Visual Studio 2017及以上

创建项目:

        控制台请创建【控制台应用(.NET Framework)】

        Web请创建【ASP.NET Web应用程序(.NET Framework)】

数据库:SQLServer数据库2012及以上版本·如果下载最新版本,使用免费版本即可。

编辑

        本地数据库链接:【.】或【127.0.0.1】

        登陆方式1:【本地登陆】

        登陆方式2:账号【sa】 pwd【admin】

        测试数据库名称:【mytest】

        排序规则:【Chinese_PRC_CI_AS】


Lambda表达式

Lambda表达式是一个匿名方法,可以结合Linq来完成相关的查询工作。

C#的Lambda表达式都使用Lambda运算符“=>”,该运算符读为“goes to”。

测试数据

这里我用的匿名对象处理的。

var list = new List<string>{"小龙女","王语嫣","赵灵儿","龙姑娘"};

我们通过Lambda表达式来筛选数据。

示例一、模糊查询有【龙】字的数据并遍历

var list = new List<string>{"小龙女","王语嫣","赵灵儿","龙姑娘"};
list = list.Where(o => o.Contains("龙")).ToList();
foreach (var item in list)
{
    Console.WriteLine(item);
}

输出效果:

编辑

我们过滤了包含【龙】字的数据。

示例二、精准查询值等于【赵灵儿】的数据

var list = new List<string>{"小龙女","王语嫣","赵灵儿","龙姑娘"};
string one = list.Where(o => o.Equals("赵灵儿")).SingleOrDefault();
Console.WriteLine(one);

查询效果

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。