Linq中常用语法
using System;
using System.Collections.Generic;
using System.ComponentModel.Design;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DataBaseFirst
{
class Program
{
static void Main(string[] args)
{
StuDBEntities1 stuDBEntities = new StuDBEntities1();
////-----------------新增数据到数据库
//List<students> student = new List<students>();
//students stu = new students();
//stu.sno = "120";
//stu.ssex = "女";
//stu.sname = "周宇菲11169";
//stu.sbirthday = Convert.ToDateTime("2020-05-03");
//stu.@class = "95035";
//插入单条数据
//stuDBEntities.students.Add(stu);
//stuDBEntities.SaveChanges();
//students tu = new students()
//{
// sno = "119",
// ssex = "男",
// sname = "周宇菲156",
// sbirthday = Convert.ToDateTime("2020-05-03"),
// @class = "95065"
// };
////多条数据插入
//student.Add(stu);
//student.Add(tu);
//stuDBEntities.students.AddRange(student);
//stuDBEntities.SaveChanges();
//-----------------根据学号删除数据
//students stu1 = new students();
//stu1.sno = "113";
//stuDBEntities.Entry<students>(stu1).State = System.Data.Entity.EntityState.Deleted;
//stuDBEntities.SaveChanges();
//-----------------根据id编辑数据
//students stu1 = new students();
//stu1.sno = "112";
//stu1.sname = "周宇菲1110";
//stu1.ssex = "女";
//stu1.@class = "95025";
//stu1.sbirthday = Convert.ToDateTime("2020-05-03");
//stuDBEntities.Entry<students>(stu1).State = System.Data.Entity.EntityState.Modified;
//stuDBEntities.SaveChanges();
//---------------------查询数据
//List<students> stu = stuDBEntities.students.ToList();
//foreach (students tu in stu)
//{
// Console.WriteLine(tu.sname);
//}
//Console.ReadKey();
//---------------------带条件的数据查询
//List<students> stu = stuDBEntities.students.Where(u => u.sno == "101").ToList();
//foreach (students tu in stu)
//{
// Console.WriteLine(tu.sname);
//}
//Console.ReadKey();
//---------------------查询排序 正序/倒叙
//List<students> stu = stuDBEntities.students.OrderBy(t => t.sbirthday).ToList();正序
//List<students> stu = stuDBEntities.students.OrderBy(t => t.sbirthday).OrderByDescending(t=>t.sbirthday).ToList();//倒序
//foreach (students tu in stu)
//{
// Console.WriteLine(tu.sbirthday);
//}
//Console.ReadKey();
//------------------Linq查询
//var student = from stu in stuDBEntities.students where stu.sno == "101" select stu;
//---------------------linq+lamda表达式查询数据
//List<students> student1 = (from stu in stuDBEntities.students where stu.sno == "101" select stu).ToList();
//List<students> student2 = student.Where(u => u.sname == "王丽").ToList();
//---------------------var 关键字
//linq擦寻首先包含一个变量,一包含哈寻的结果集,通常使用var来声明
//---------------------使用Linq多表联查
//var teacher_course = from te in stuDBEntities.teachers
// join cu in stuDBEntities.courses
// on te.tno equals cu.tno
// orderby te.tno
// select cu;
//使用Linq查询加函数查询两种写法
//var student = (from stu in stuDBEntities.students select stu).Count();
//var student1 = stuDBEntities.students.Count();
//var Minstudent = (from stu in stuDBEntities.students select stu).Min();
//var Min1student1 = stuDBEntities.students.Min();
//求余函数
// var Min1student1 = (from stu in stuDBEntities.students select stu).Skip(2);
//----------------Linq查询分页
//List<students> stude = (from stu in stuDBEntities.students orderby stu.sno descending select stu).Skip(2).Take(5).ToList();
//List<students> stude1 = stuDBEntities.students.OrderByDescending(stu => stu.sno).Skip(2).Take(5).ToList();
//foreach (students tu in stude1)
//{
// Console.WriteLine(tu.sname);
//}
//Console.ReadKey();
//---------------Linq的模糊查询Contains 相当于like
//linq写法
// List<students> stude = (from stu in stuDBEntities.students where stu.sname.Contains("宇") select stu).ToList();
////lamda写法
//List<students> stude = stuDBEntities.students.Where(tu => tu.sname.Contains("宇")).OrderByDescending(tu => tu.sno).ToList();
//foreach (students tu in stude)
//{
// Console.WriteLine(tu.sname);
//}
//Console.ReadKey();
//分组查询取单列
//var stude1 = from stu in stuDBEntities.students
// group stu by stu.sname into n
// select new
// {
// n.Key
// };
//foreach (var item in stude1)
//{
// Console.WriteLine(item.Key);
//}
//Console.ReadKey();
//取多列
//var stude1 = from stu in stuDBEntities.students
// group stu by new { stu.sname, stu.ssex } into n
// select new
// {
// n.Key.sname,
// n.Key.ssex
// };
//foreach (var item in stude1)
//{
// Console.WriteLine(item.sname);
//}
//Console.ReadKey();
//使用Lamda写groupby
//var stude1 = stuDBEntities.students.GroupBy(p => p.sno).ToList();
//foreach (var item in stude1)
//{
// Console.WriteLine(item.Key);
//}
////多列
//var stude2= stuDBEntities.students.GroupBy(p => new { p.sname, p.ssex }).ToList();
//foreach (var item in stude2)
//{
// Console.WriteLine(item.Key.sname);
//}
//Console.ReadKey();
//--------------------Linq中的in用法
//var stude1 = from stu in stuDBEntities.students where (new string[] { "101","103" }).Contains(stu.sno) select stu;
//foreach (var item in stude1)
//{
// Console.WriteLine(item.sname);
//}
//Console.ReadKey();
//var info = from stu in stuDBEntities.STUDENT where (new int?[] { 1, 2 }).Contains(stu.s_code) select stu;
//foreach (var item in info)
//{
// Console.WriteLine(item.s_address);
//}
//Console.ReadKey();
//Linq中的sql
//var stu = stuDBEntities.students.SqlQuery("select * from students where sno in('101','102')");
//foreach (var item in stu)
//{
// Console.WriteLine(item.sname);
//}
//Console.ReadKey();
}
}
}
Linq中常用语法的更多相关文章
- Linq中常用的方法
这几天闲着也是闲着,就仔细的研究了一下Linq的语法,还有他的一些扩展方法的使用. 下面是一些常用的扩展方法. Aggregate 自定义的聚合计算 All 检测序列中所有元素是否都满足指定的条件 A ...
- 【Linq】常用语法汇总
语言继承查询(Language Integrated Query, LINQ),在C#编程语言中集成了查询语法,可以用相同的语法访问不同的数据源,LINQ提供了不同数据源的抽象层,所以可以使用相同语法 ...
- Day 30:HTML和CSS在Java项目中常用语法
framSet例子,其中的页面链接地址视情况而定,应为我还不知怎么弄当前文件下呢,例子主要在说明该标签如何使用 <!DOCTYPE html PUBLIC "-//W3C//DTD X ...
- LINQ 中常用函数使用: Take TakeWhile Skip SkipWhile Reverse Distinct
1,Take 方法 Take方法用于从一个序列的开头返回指定数量的元素. string[] names = { "郭靖", "李莫愁", "欧阳晓晓& ...
- PHP中Smarty引擎的常用语法
PHP中Smarty引擎的常用语法 输出今天的日期: {$smarty.now|date_format:"%H:%M %A, %B %e, %Y"} 实际上用到了PHP的time( ...
- 【.NET基础】Linq常用语法代码演示
前言:前言不重要,linq入门常用的语法,linq语法可以用来写操作集合.数据库表集合等等几乎所有集合类型的操作.下面就写几个案例(以List集合来做的),看代码和运行结果即可. 本文演示环境:VS2 ...
- .net开发中常用的第三方组件
.net开发中常用的第三方组件 2013-05-09 09:33:32| 分类: dotnet |举报 |字号 订阅 下载LOFTER 我的照片书 | RSS.NET.dll RSS. ...
- .NET中常用的几种解析JSON方法
一.基本概念 json是什么? JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是一种轻量级的数据交换格式,是存储和交换文本信息的语法. ...
- Linq中join & group join & left join 的用法
Linq中join & group join & left join 的用法 2013-01-30 11:12 12154人阅读 评论(0) 收藏 举报 分类: C#(14) 文章 ...
随机推荐
- 架构师必备:巧用Canal实现异步、解耦的架构
本文介绍如何应用Canal实现异步.解耦的架构,后续有空再写文章分析Canal原理和源代码. Canal简介 Canal是用来获取数据库变更的中间件. 伪装自己为MySQL从库,拉取主库binlog并 ...
- 整理记录一些好用的随机图API
最近自己博客使用的随机图API有些不稳定,自己又去搜集了一些有意思的随机图API,这里做一个整理记录 注意!!!本文链接最后测试时间----2021年11月21日 主题作者Tagaki的API(有时候 ...
- DirectX12 3D 游戏开发与实战第七章内容(下)
利用Direct3D绘制几何体(续) 学习目标 学会一种无须每帧都要刷新命令队列的渲染流程,由此来优化程序的性能 了解另外两种跟签名参数类型:根描述符和根常量 探索如何在程序中生成和绘制常见的几何体, ...
- 【机器学习与R语言】6-线性回归
目录 1.理解回归 1)简单线性回归 2)普通最小二乘估计 3)相关系数 4)多元线性回归 2.线性回归应用示例 1)收集数据 2)探索和准备数据 3)训练数据 4)评估模型 5)提高模型性能 1.理 ...
- [R] cbind和filter函数的坑
最近我用cbind函数整合数据后,再用filter过滤数据,碰到了一个大坑. 以两组独立样本t检验筛选差异蛋白为例进行说明吧. pro2 <- df2[1:6] Pvalue<-c(rep ...
- android 点击图片从Fragment跳转到activity
android 点击图片从Fragment跳转到activity 在Fragment里编写 public View onCreateView(@NonNull LayoutInflater infla ...
- UE4之Slate:App默认窗口的创建流程
UE4版本:4.24.3源码编译 Windows10 + VS2019开发环境 在先前分享的基础上,现在来梳理下App启动时默认窗口的创建流程,以及相关的类.对象之间的抽象层级: 纯C++工程配置 S ...
- 巩固java第五天
巩固内容: HTML 实例解析 <p> 元素: <p>这是第一个段落.</p> 这个 <p> 元素定义了 HTML 文档中的一个段落. 这个元素拥有一个 ...
- A Child's History of England.24
Besides all these troubles, William the Conqueror was troubled by quarrels among his sons. He had th ...
- Java实现读取文件
目录 Java实现读取文件 1.按字节读取文件内容 使用场景 2.按字符读取文件内容 使用场景 3.按行读取文件内容 使用场景 4.随机读取文件内容 使用场景 Java实现读取文件 1.按字节读取文件 ...