zoukankan      html  css  js  c++  java
  • 字符串数组 string[] 转换为 字符串(用逗号,作为分隔符),linq Except的用法,linq获取两个字符串数组相同的部分

    string[] oldIds = tempRe.Ids.Split(','); //数据库里面保存的原来的数据 例如 1,2,3,4
    string[] newIds = ids.Split(',');        //传递过来的新的数据 例如  3,4,5,6


    var result = from a in oldIds join b in newIds on a equals b into list from r in list select r;  //获取相同的例如 3,4


    string[] sameIds = result.ToArray();
    //步骤2:用linq把新,旧与相同的对比一下,哪些delete了,哪些add了
    string[] deleteIds = oldIds.Except(sameIds).ToArray(); //用来返回oldIds有,sameIds没有的值,也就是计算被删除掉的
    string[] addIds = newIds.Except(sameIds).ToArray();  //计算new的有,same没有的值,也就是增加的

    //步骤3:该删除的删除,该增加的增加,该update群名字的update群名字
    string goDeleteIds = deleteIds.Length != 0 ? string.Join(",", deleteIds) : "";
    string goAddIds = addIds.Length != 0 ? string.Join(",", addIds) : "";

    linq Except的用法

               int[] a = {1, 2, 3, 4};
             int[] b = {2, 3, 4, 5};
             var reslut = a.Except(b);
        result 用来返回a有,b没有的值,计算结果是1。

  • 相关阅读:
    C#.NET 超大文件上传和断点续传的实现
    Linux下arp用法
    daf简记
    Linux route命令详解和使用示例(查看和操作IP路由表)
    CMake使用之一
    Crontab的格式
    linux 单网卡绑定两个ip
    云计算与虚拟化以及IaaS, PaaS和SaaS
    shell中判断用法
    解决screen Cannot open your terminal '/dev/pts/1'问题
  • 原文地址:https://www.cnblogs.com/joeylee/p/2968619.html
Copyright © 2011-2022 走看看