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. textext for Inkscape

    http://askubuntu.com/questions/417212/inkscape-with-textext http://www.timteatro.net/2010/08/05/text ...

  2. RabbitMQ 均衡调度(公平分发机制)

    均衡调度是针对Consumer来说的.现在有两个Consumer请求同一个队列的消息.RabbitMQ会将序号为奇数的消息发给第一个Consumer,会将序号为偶数的消息发送给第二个Consumer. ...

  3. springMVC的工作流程图

  4. Dom操作注意事项

    Dom操作注意事项 基本概念: 在 HTML DOM (文档对象模型)中,每个部分都是节点: 文档本身是文档节点 所有 HTML 元素是元素节点 所有 HTML 属性是属性节点 HTML 元素内的文本 ...

  5. 完全卸载vs2013 2015

    /uninstall /force 解压你的vs2013的安装包(iso格式). cd到解压后的文件夹 vs_ultimate.exe /uninstall /force 或者创建一个快捷方式到桌面 ...

  6. SQL-39 使用索引

    题目描述 针对salaries表emp_no字段创建索引idx_emp_no,查询emp_no为10005, 使用强制索引.CREATE TABLE `salaries` (`emp_no` int( ...

  7. translclude

    .transclude:true 启用transclude,启用以后,有两个地方会发生变化: ①.使用指令的元素内部的所有内容都会被保存起来.不妨先把这一段内容称为一坨. 比如指令元素是这样的: &l ...

  8. SharePoint Framework 企业向导(二)

    博客地址:http://blog.csdn.net/FoxDave 开发者视角 SharePoint开发者,无论是新手还是有经验的,都可以从SPFx中获取一些东西.当前SPFx的发布版本专注于以一 ...

  9. MVC4.0实现批量删除

    HTML: @using(Html.BeginForm("Delete","Home")){    <div>    <input type= ...

  10. SpringMVC学习一

    先看SpringMVC的视图解析    以及 摘录自http://www.cnblogs.com/HigginCui/p/5856780.html的架构解析 1.DisPatcherServlet:前 ...