public void Put(List<OnlineItem> datas)
        {
            try
            {
                string tblName = datas[0].beginTime.ToString("yyyy-MM-dd");
                MongoCollection<BsonDocument> table = null;

                if (tables.ContainsKey(tblName))
                {
                    table = tables[tblName];
                }
                else
                {
                    table = db.GetCollection(tblName);
                    tables.TryAdd(tblName, table);
                }
                var bulk = table.InitializeOrderedBulkOperation();
                //var update = new UpdateBuilder();

                foreach (var data in datas)
                {
                    data.UpdateTime = DateTime.Now;
                    IMongoQuery query = Query.EQ("Seq", data.Seq);
                    var update = new UpdateDocument() { { "$set", BsonDocumentWrapper.Create(data) } };
                    bulk.Find(query).Update(update);
                }
                bulk.Execute();
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex, "Put");
            }
        }

c# Mongodb批量更新的更多相关文章

  1. mongodb 批量更新 数组的键操作的文件

    persons该文件的数据如下面的: > db.persons.find() { "_id" : 2, "name" : 2 } { "_id& ...

  2. mongodb批量更新操作文档的数组键

    persons文档的数据如下: > db.persons.find(){ "_id" : 2, "name" : 2 }{ "_id" ...

  3. MongoDB批量更新和批量插入的方式

    最近,在调试代码中发现向MongoDB插入或者更新文档记录时若是多条的话都是采用for循环操作的,这样的处理方式会造成数据操作耗时,不符合批量处理的原则:对此,个人整理了一下有关MongoDB的批量更 ...

  4. mongodb批量更新某个字段

    查询出hospitalName是xx医院和openId以2开头的所有记录,并且更新my_booking表中的payType为1. db.getCollection('my_booking').find ...

  5. Mongodb 批量更新

    >db.col.update({查询条件},{修改条件},{multi:true})

  6. MongDB 批量更新

    最近公司在使用mongodb.  批量更新的语句为: db.table.update(  {'wo': {$in: [ "123", "456"]}}, {$s ...

  7. MongoDB学习笔记~大叔分享批量添加—批量更新—批量删除

    回到目录 说它是批量操作,就是说将集合对象一次提交到服务器,并对数据进行持久化,如果您的代码是一次一次的提交,那不算是批量操作!在之前的mongodb仓储中并没有对批量更新和批量删除进行实现,而今天在 ...

  8. C# mongodb $set或$addToSet批量更新很慢原因

    C# mongodb $set或$addToSet批量更新很慢原因的解决方法:关键字段要建立索引

  9. springboot 整合 mongodb实现 批量更新数据

    现需求:需要批量将1000个数据先查询在更新到mongodb(如果查询不到数据,则添加数据) 1:工具类BathUpdateOptions import org.springframework.dat ...

随机推荐

  1. lsof and dynamic array in bash/shell

    https://unix.stackexchange.com/questions/171519/lsof-warning-cant-stat-fuse-gvfsd-fuse-file-system F ...

  2. Cocos 2d TestCPP 学习

    Cocos 2d testcpp包含了大量的demo, 对于新手学习cocos引擎具有非常大的帮助.因为接下来的开发项目有可能会用到该引擎,所以希望可以利用自己的业余时间提前熟悉起来.该篇文章会记录自 ...

  3. 【Python全栈-JavaScript】JavaScript入门

    JavaScript基础知识点 一.JavaScript概述 参考:http://www.w3school.com.cn/b.asp JavaScript的历史 1.1992年Nombas开发出C-m ...

  4. install python in wine

    wget http://www.kegel.com/wine/winetricks chmod +x winetricks ./winetricks 钩选msxml3就可以了. ___________ ...

  5. JavaScript学习笔记--语法二

    条件判断与C语言一样 两种循环.for 循环和 while 循环,JavaScript不区分整数和浮点数,统一用Number表示,所以不是 int i var x = 0; var i; for (i ...

  6. sqlserver数据库查询,在数据类型不一致时容易出错

    1. 如此句sql: select SysNo from User_MainInfo where Ouid=@Ouid 在 User_MainInfo表中Ouid是nvarchar类型,但当我们传入的 ...

  7. 字符集更改步骤,mysql乱码

    关键字:Mysql乱码,mysql字符集修改 #字符集更改步骤~

  8. Linux软件包安装

    rpm命令 命名方式  name-VERSION-release.arch.rpm 常见的arch: x86:   i386  i486    i586   i686 x86_64:   x64    ...

  9. vue 常用问题

    缺少style-loader 或者 stylus-loader 等问题 在文件[package.json]分支:[devDependencies]添加 版本号: "stylus": ...

  10. ROS开发与常用命令

    初始化ROS的catkin工作空间:catkin_init_workspace 编译ROS的catkin工作空间:catkin_make 读取当前catkin工作空间的环境变量:source deve ...