using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace ConsoleApplication2
{ class Program
{
public class post
{
public string id { get; set; }
public string name { get; set; }
public int age { get; set; }
public string pd { get; set; }
}
static void Main(string[] args)
{
var product = new List<post>
{
new post { name=""},
new post { name=""},
new post { name=""},
new post { name=""},
};
product.ToList().ForEach(a => a.id = Guid.NewGuid().ToString("N"));//进行遍历赋值 var pp = product.ToDictionary(a => a.name, a => a.id); //转成字典
Console.WriteLine(pp.FirstOrDefault().Key + " " + pp.FirstOrDefault().Value); product.Add(new post { name = "", id = Guid.NewGuid().ToString("N") });
var pd = product.ToLookup(a => a.name, a => a.id);//groupby之后转成字典,取不同项
Console.WriteLine(pp.FirstOrDefault().Key + " " + pp.FirstOrDefault().Value); var pro = new List<post>
{
new post { id = Guid.NewGuid().ToString("N"),name="",age=,pd="sad"},
new post { id = Guid.NewGuid().ToString("N"),name="",age=,pd="sad"},
new post { id = Guid.NewGuid().ToString("N"),name="",age=,pd="sad"},
new post {id = Guid.NewGuid().ToString("N"), name="",age=,pd="sad"},
};
var prd = new List<post>
{
new post { id = Guid.NewGuid().ToString("N"),name="",age=,pd="sad"},
new post { id = Guid.NewGuid().ToString("N"),name="",age=,pd="sad"},
new post {id = Guid.NewGuid().ToString("N"), name="",age=,pd="sad"},
new post {id = Guid.NewGuid().ToString("N"), name="",age=,pd="sad"},
};
var dsz = pro.Select(s => new { id = s.age, name = s.name, pd = s.pd });
var dsx = prd.Select(s => new { id = s.age, name = s.name, pd = s.pd });
var dsc = dsz.Except(dsx).Count();
if (dsc > )
Console.WriteLine("修改过");
else
Console.WriteLine("未修改"); if (pro.Select(s => new { id = s.age, name = s.name, pd = s.pd }).Except(prd.Select(s => new { id = s.age, name = s.name, pd = s.pd })).Count() > )
Console.WriteLine("修改过");
else
Console.WriteLine("未修改");
Console.WriteLine(dsc); Console.Read(); } } }

c# 敏捷2 ForEach ToDictionary ToLookup Except比较的更多相关文章

  1. 挖一挖C#中那些我们不常用的东西之系列(1)——ToDictionary,ToLookup

    这个系列我们看看C#中有哪些我们知道,但是又不知道怎么用,又或者懒得去了解的东西,比如这篇我们要介绍的toDictionary 和ToLookup. 从图中我们看到有四个ToXXX的方法,其中ToAr ...

  2. ToDictionary,ToLookup

    这个系列我们看看C#中有哪些我们知道,但是又不知道怎么用,又或者懒得去了解的东西,比如这篇我们要介绍的toDictionary 和ToLookup. 从图中我们看到有四个ToXXX的方法,其中ToAr ...

  3. 挖一挖C#中那些我们不经常使用的东西之系列(1)——ToDictionary,ToLookup

    这个系列我们看看C#中有哪些我们知道.可是又不知道怎么用.又或者懒得去了解的东西,比方这篇我们要介绍的toDictionary 和ToLookup. 从图中我们看到有四个ToXXX的方法,当中ToAr ...

  4. Linq常用查询运算符

    Linq一共包含五十几个查询运算符,常用的根据类型来区分一共有5类左右,这五类里面一些事在项目查询中经常用到的.不过linq运算符的命名十分规范,基本从字面意思就能猜测出来是干嘛用的,下面我们挑选一些 ...

  5. C#经典系列-键值对

    1.ToDictionary,ToLookup 从图中我们看到有四个ToXXX的方法,其中ToArray和ToList,用的是非常非常多 我们有这样的一个实体 class student { publ ...

  6. 再次理解 C# LINQ

    语言集成查询 (LINQ) 是一系列直接将查询功能集成到 C# 语言的技术统称. 查询表达式(生成表达式) 1.IEnumerable<T> 查询编译为委托.如 source.Where( ...

  7. C#(少用的)

    挖一挖C#中那些我们不常用的东西之系列(1)——ToDictionary,ToLookup 挖一挖C#中那些我们不常用的东西之系列(2)——IsXXX 系列方法 挖一挖C#中那些我们不常用的东西之系列 ...

  8. 23LINQ运算符返回其它类型实例汇总

      IEnumerable<T>返回其它集合类型 ToArray() ToList() ToDictionary() ToLookUp()     返回集合中的元素 □ ElementAt ...

  9. LINQ标准查询操作符(四) —AsEnumerable,Cast,OfType,ToArray,ToDictionary,ToList,ToLookup,First,Last,ElementAt

    十.转换操作符 转换操作符是用来实现将输入对象的类型转变为序列的功能.名称以“As”开头的转换方法可更改源集合的静态类型但不枚举(延迟加载)此源集合.名称以“To”开头的方法可枚举(即时加载)源集合并 ...

随机推荐

  1. dgango中admin下添加搜索功能

    admin下添加搜索功能: 在表单中加入search_fields = ['ip','hostname']   可模糊匹配 当有人在管理搜索框中进行搜索时,Django将搜索查询分解成单词,并返回包含 ...

  2. 【转载】Qt中图像的显示与基本操作

    Qt可显示基本的图像类型,利用QImage.QPxmap类可以实现图像的显示,并且利用类中的方法可以实现图像的基本操作(缩放.旋转). 参考:Qt中图像的显示与基本操作 - ykm0722的专栏 - ...

  3. python操作Excel读写(使用xlrd和xlrt)

    包下载地址:https://pypi.python.org/pypi/xlrd   导入 import xlrd 打开excel data = xlrd.open_workbook('demo.xls ...

  4. csv,json格式数据的读写

    #!python3 # -*- coding:utf-8 -*- #CSV stands for "comma-separated values",and CSV files ar ...

  5. 第三篇 功能实现(1) (Android学习笔记)

    第三篇 功能实现(1) 第8章 Android应用程序组成 ●Android的一些中.底层基础知识 ※ Android Framework 启动过程 Android手机系统本质上是一个基于Linux的 ...

  6. 网口扫盲三:以太网芯片MAC和PHY的关系(转)

      问:如何实现单片以太网微控制器? 答:诀窍是将微控制器.以太网媒体接入控制器(MAC)和物理接口收发器(PHY)整合进同一芯片,这样能去掉许多外接元器件.这种方案可使MAC和PHY实现很好的匹配, ...

  7. 福大软工 · 第八次作业(课堂实战)——项目UML设计(团队)

    团队 学号 姓名 本次作业博客链接 031602428 苏路明(组长) https://www.cnblogs.com/Sulumer/p/9822854.html 031602401 陈瀚霖 htt ...

  8. shell脚本实例-安装httpd,安装yum源

    1.安装httpd #!/usr/bin/bash getway=192.168.1.1 ping -c1 www.baidu.com &>/dev/null if [ $? -eq 0 ...

  9. ubuntu Cairo图形库 环境搭建

    Cairo官网:http://cairographics.org/ 根据官网指示,我使用如下语句安装好cairo库 sudo apt-get install libcairo2-dev 从官网拷贝代码 ...

  10. Vue项目初始化

    1. 生成项目模板 vue init <模板名> 本地文件夹名称2. 进入到生成目录里面 cd xxx npm install3. npm run dev vue项目模板介绍: simpl ...