string goodsList = context.Request.Form["goodsList"];
if (!string.IsNullOrEmpty(goodsList))
{
//同步过来物品数据,删除后修改
List<FSTP_ADPMS_SoakGoodsInfo> goodsLst = Newtonsoft.Json.JsonConvert.DeserializeObject<List<FSTP_ADPMS_SoakGoodsInfo>>(goodsList);
if(goodsLst.Count != )
{
int OrgID = goodsLst[].OrganiseUnitID;
QueryBuilder queryBuilder = new QueryBuilder();
queryBuilder.AddFilter(FSTP_ADPMS_SoakGoodsInfo.FSTP_ADPMS_SOAKGOODS_TABLE, FSTP_ADPMS_SoakGoodsInfo.ORGANISEUNITID_FIELD, "=", OrgID);
//数据库中存在数据
List<FSTP_ADPMS_SoakGoodsInfo> oldLst = new FSTP_ADPMS_SoakGoodsBLL().GetModelList(queryBuilder);
//添加数据
List<FSTP_ADPMS_SoakGoodsInfo> insertLst = goodsLst.Except(oldLst, new SoakGoodsInfoCompare()).ToList();
//修改数据
List<FSTP_ADPMS_SoakGoodsInfo> updateLst = goodsLst.Intersect(oldLst, new SoakGoodsInfoCompare()).ToList();
if (Goodsbll.Add(insertLst, updateLst) != "")
{
context.Response.Write(" Resule->OK");
}
}
} //物品对比类
public class SoakGoodsInfoCompare : IEqualityComparer<FSTP_ADPMS_SoakGoodsInfo>
{
public bool Equals(FSTP_ADPMS_SoakGoodsInfo x, FSTP_ADPMS_SoakGoodsInfo y)
{
return x.ID == y.ID;
} public int GetHashCode(FSTP_ADPMS_SoakGoodsInfo obj)
{
return ;
}
}

Linq 取差集 交集等的更多相关文章

  1. Silverlight项目笔记6:Linq求差集、交集&检查网络连接状态&重载构造函数复用窗口

    1.使用Linq求差集.交集 使用场景: 需要从数据中心获得用户数据,并以此为标准,同步系统的用户信息,对系统中多余的用户进行删除操作,缺失的用户进行添加操作,对信息更新了的用户进行编辑操作更新. 所 ...

  2. mysql取差集、交集、并集

    mysql取差集.交集.并集 博客分类: Mysql数据库 需求:从两个不同的结果集(一个是子集,一个是父集),字段为电话号码phone_number,找出父集中缺少的电话号码,以明确用户身份. 结合 ...

  3. 关于C++里set_intersection(取集合交集)、set_union(取集合并集)、set_difference(取集合差集)等函数的使用总结

    文章转载自https://blog.csdn.net/zangker/article/details/22984803 set里面有set_intersection(取集合交集).set_union( ...

  4. 关于 js 2个数组取差集怎么取

    关于 js 2个数组取差集怎么取? 例如求var arr1 = [1]; var arr2 = [1,2];的差集方法一: Array.prototype.diff = function(a) { r ...

  5. C# Linq获取两个List或数组的差集交集

      List<); list1.Add(); list1.Add(); List<); list2.Add(); list2.Add(); //得到的结果是4,5 即减去了相同的元素. L ...

  6. 用Linq取两个数组的差集

    两个数组,取其差集,用Linq做比较方便,效率也比较高,具体如下示例 有两个数组list1 和list2 ,如下 List<int> list1 = new List<int> ...

  7. c# linq的差集,并集,交集,去重【转】

    using System.Linq;      List<string> ListA = new List<string>(); List<string> List ...

  8. SQL Server操作结果集-并集 差集 交集 结果集排序

    操作结果集 为了配合测试,特地建了两个表,并且添加了一些测试数据,其中重复记录为东吴的人物. 表:Person_1魏国人物 表:Person_2蜀国人物 A.Union形成并集 Union可以对两个或 ...

  9. [转]用Linq取CheckBoxList選取項目的值

    本文转自:http://www.dotblogs.com.tw/hatelove/archive/2011/11/17/linq-checkboxlist-items-selected-values. ...

随机推荐

  1. Redis操作Set工具类封装,Java Redis Set命令封装

    Redis操作Set工具类封装,Java Redis Set命令封装 >>>>>>>>>>>>>>>>& ...

  2. 转载--SQL Server 2005的XQuery介绍

    原文地址: http://bbs.51cto.com/thread-458009-1-1.html   引用: 摘要 本文介绍了SQL Server 2005能够支持的XQuery的各方面特性如FLW ...

  3. Object-C日志记录

    在Object-C中,将日志信息输出到控制台是非常简单的.实际上NSLog()函数很像C语言里面的printf()函数,出了要用一个%@符号代表一个对象. NSLog(@"The curre ...

  4. 利用putty实现文件在linux上传和下载

    利用putty实现文件上传和下载:1.打开windows命令提示符窗口d:(putty在d盘下)cd putty(pscp.exe所在目录)2:上传(主要利用pscp程序)pscp d:/jdk-8u ...

  5. java之表达式陷阱

    String str1 = "Hello Java的长度:10"; String str2 = "Hello Java的长度:10";  String str3 ...

  6. Installshield: custom action return value

    参考:MSDN: Custom Action Return Values 参考:MSDN: Logging of Action Return Values

  7. References & the Copy-Constructor

    1 There are certain rules when using references: (Page 451) A reference must be initialized when it ...

  8. (redis缓存更新策略)postgres 9.4.1 && redis 3.7.0 && redis_fdw_REL9_4_STABLE

    首先下载redis_fdw,这里要注意下载的版本.(https://github.com/pg-redis-fdw/redis_fdw) 一开始,我下载了REL9_4_STABLE_pre2.8版本, ...

  9. 【搭建开发环境】在 Windows XP 中参与开源项目,搭建 git 和 cygwin 开发环境

    引言 只有一台 Windows XP 家用机,却想在诸如 Git@OSC 之类的开源社区参与开发,本文提供一个入门级的开发环境搭建指引. 涉及工具:Eclipse,EGit,Cygwin. 欢迎来到 ...

  10. 给定任意一个字符串,使用 for in 语句来统计字符出现的个数

    //找出字符串中的数字 var str = 'haj123sdk54hask33dkhalsd879'; /*function findNum(str){ var arr = []; var tmp ...