首页 > TAG信息列表 > LINQ

C#小技巧---Linq的使用

1.基本介绍 LINQ(Language Integrated Query)即语言集成查询。 LINQ是一组语言特性和API,使得你可以使用统一的方式编写各种查询。用于保存和检索来自不同数据源的数据,从而消除了编程语言和数据库之间的不匹配,以及为不同类型的数据源提供单个查询接口。 LINQ总是使用对象,因此你可以使

linq小结

普通查询 var query = from s in context.Student select s; //投影列 var query = from s in context.Student select new { s.Id, s.StudentName }; //起别名 var query = from a in context.Student select new { 姓名 = a.StudentName, 性别 = a.Sex }; 排序

LINQ经典面试案列

题目:统计一个字符串中每个字母出现的频率(忽然大小写),然后按照从高到低输出频率高于2次的单词和出现的频率。   代码: string strabc = "hello chenchen is me,are you ok?"; var items=strabc.Where(c => char.IsLetter(c)).Select(c => char.ToLower(c)).GroupBy(c => c).Select(

C#中Linq常用用法

1、linq中交集、并集、差集的用法 简单的交集、并集、差集用法如下: List<string> ListA = new List<string>(); List<string> ListB = new List<string>(); List<string> ListResult = new List<string>(); ListResult = ListA.Distinct().ToList();//去重 ListResul

LINQ和委托随意转化例子参考

static void Main(string[] args) { //LINQ简化 Action<string> f1 = s => Console.WriteLine(s); //委托 Action<string> f11 = delegate (string s) { Console.WriteLine(s); }; //LINQ简化 Func<int, bool> f2 = i => i > 5; //委托 Func<int

LINQ:Group Join

1.代码 //group join var groupJoinQS = from addr in Address.GetAddress() join emp in Employee.GetAllEmployees() on addr.ID equals emp.AddressId into ADDEmp select new { addr, ADDEmp };

Linq

一、常用函数 Where:每一项数据都会经过predicate(传入的委托lambda表达式)的测试,如果对元素执行predicate后返回值为True,则这个元素会添加到结果数组中 Count:每一项数据都会经过predicate(传入的委托lambda表达式)的测试,如果对元素执行predicate后返回值为True,则返回结果加1  

借用Linq To SQL,Dapper和自定义实体属性映射构建数据库底层实体和仓储层代码

这里直接列举核心代码,以后整理: 底层引用Dapper。   a1-实体类: using WebApplication1.DB.Extend; using WebApplication1.Enum; namespace WebApplication1.DB.CMS { [ClassMapper(EDBConnectionType.SqlServer, "dbo", "TB_UserSendAddressOrder")] public class

linq to entity group by 时间

CreationTime是DateTime类型group by 年/月/日/小时group by 年 (from d in YourData.OrderBy(x => x.CreationTime) group d by new { time = new { d.CreationTime.Year } } into g select new { AverageValue = g.Average(p => p.Value), CreationTimeStr = g.Key

第二部分:LINQ

P21:为啥要学LINQ    对比Python :numpy 学习路线   用数据类型定义的理念解释委托  委托:方法的(数据)类型,指向方法的类型,对比 int i=5;整数类型的i指向整数5;数据的类型     D1 d = F1;//注意F1不带括号(),带了表示方法调用了 d();//执行D1所指向的方法 d = F2; d(); D2 d2

C#linq中的any方法解析

Linq中的any方法有那两个重载 any()的方法主要功能是:判断是否为空、是否存在元素满足指定的条件。 any()空参的方法 作用:判断目标是否为空、是否包含元素。 //声明一个int类型的数组 int[] intA = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; //判断数

在LINQ查询中使用GROUPBY时,无法转换LINQ表达式的GroupByShaperExpression:

我想对表中的每一列求和,如下所示:输入镜像描述here 此表的模型名为TotalConfiguration,如下所示: public class TotalConfiguration { [Key] public int idTotalConfiguration { get; set; } [ForeignKey("Projects")] public Guid IdProjects

Linq SelectMany

Linq SelectMany SelectMany SelectMany查询语法 from 标识符1 in 可枚举的表达式1 from 标识符2 in 可枚举的表达式2 先看一个简单的例子 string[] arr = { "a b c", "x y z", "1 2 3" }; var q1 = from a in arr from b in a.Split()

C#中Linq及扩展方法的简单使用

一、简介   简单记录一下Linq以及其扩展方法的使用 二、准备工作   准备好一个Employee类和Department类 public class Employee { public int EmployeeId { get; set; } public string EmployeeName { get; set; } public int EmployeeAge { g

【Linq】链表时多条件

SQL语句: SELECT * FROM dbo.PlatformUserOrg A LEFT JOIN dbo.BusinessPlatformAccount B ON A.AppId=B.AppId AND A.OrgCode=B.Account WHERE B.AccountType=0 Linq写法: from orgInfo in db.PlatformUserOrgs join accountInfo in db.BusinessPlatformAccounts on new { app

Linq

Linq 1、List集合分组去重 https://blog.csdn.net/qq_40732336/article/details/116917972        C# Linq 的三种去重方式(Distinct)  1-1:运用了最简单的一种    

C#中Linq查询使用ToLower()会导致查询速度变慢

  //str.ToLower()方法在Linq中非常耗费资源,如果查询集合数量较多,会使查询速度变慢,慎用。如果需要变成小写,尽量在生成集合时就 把集合变成小写。而不是在查询阶段使用。   当然如果集合数量不多的话,那无所谓。    var v1 = from model in models where model.str.ToLower()

Linq连表查询

前言 本人小白程序员一枚 会点java也会点.net 最近在公司做项目当中用到了linq连表查询 因为好久没用linq了 有些语法我也忘记了 既然不会那就一个字学! 正文 在数据库中 表关系有一对一关系 一对多关系,多对多关系 我的需求是 我需要根据用户的id查询用户收藏的内容 表设计 收藏表

【Linq】表达式中And、Or和AndAlso、OrElse的区别

前言 最近在EFCore中,做一个动态拼接日期的操作,在查看EFCore生成的sql语句时,发现写的判断都被转换为了bit位,然后才去比较结果,感觉很别扭,而且担心这种bit位判断会影响速度,随后开始百度Linq的表达式区别 微软文档 下面几个链接是微软对And、Or和AndAlso、OrElse的解释,感觉看着有些干

.NET高级语法:委托(switch,错误处理,缓存处理,数据库调用处理),linq to object

1.委托2.linq3.linq to sql4.AOP封装-委托嵌套 委托封装:能把一个方法包装成一个变量,然后传递,所以用委托来完成逻辑拆分把固定的固定,只关注通用逻辑,完成固定,把可变的提出交给调用者指定,更稳定,这就是代码封装     应用场景: switch case 1.student.SayHi("李恒", Student.PeopleTy

16.AutoMapper 之可查询扩展(Queryable Extensions)

可查询扩展(Queryable Extensions) 当在像NHibernate或者Entity Framework之类的ORM框架中使用AutoMapper的标准方法Mapper.Map 时,您可能会注意到,当AutoMapper尝试将结果映射到目标类型时,ORM将查询图形中所有对象的所有字段。 如果你的ORM表达式是IQueryable的,你可以使用AutoMap

简述Linq中.ToList(), .AsEnumerable(), AsQueryable()的区别和用法

简述Linq中.ToList(), .AsEnumerable(), AsQueryable()的区别和用法 标签: blog   目录 简述Linq中.ToList(), .AsEnumerable(), AsQueryable()的区别和用法 AsQueryable() lazy load 特性 显式调用 AsQueryable()? IQueryable的限制 AsEnumerable() 同样支持 lazy load,

FreeSql学习笔记——11.LinqToSql

前言   Linq的强大大家有目共睹,可以以简便的方式对数据集进行复杂操作,LinqToSql经常使用在数据库的联表、分组等查询操作中;FreeSql对LinqToSql的支持通过扩展包FreeSql.Extensions.Linq;     Init dotnet add package FreeSql.Extensions.Linq     说明 请尽量不要在

.NET经销商实战(二)——仓储与服务层完善,及扩展linq

1.IRepository如下 点击查看代码 using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Threading.Tasks; using DealerPlatform.Domain.Models; namespace DealerPlatform.Core.Repository { public interface I

C#学习教程:LINQ to Entities无法识别方法’System.String Split(Char )’方法

LINQ to Entities 不识别方法“System.String ToXX()”,因此该方法无法转换为存储表达式这是因为LINQ语句最后都是要转为sql语句来执行的,当它转换后,发现sql语句中要执行的方法“XX”,并不是一个在数据库中的存储过程函数,也无法进行转换为存储表达式。Entity Framework不支持String.S