首页 > 数据库 >MongoDB.Driver c# 操作

MongoDB.Driver c# 操作

时间:2023-01-11 17:34:28浏览次数:30  
标签:c# MongoDB Driver collection filter filterBuilder result var folderGuidList

读取

       List<string> getfolderGuidList()
       {
           var folderGuidList = new List<string>();
           try
           {
               // 读取连接字符串
    var   strCon = $"mongodb://{userName}:{PassWord}@{ip}:{port}/{dbName}";
               var mongoUrl = new MongoUrlBuilder(strCon);
               // 创建并实例化客户端
               var _client = new MongoClient(mongoUrl.ToMongoUrl());
               //  根据数据库名称实例化数据库
               var database = _client.GetDatabase(dbName);
               var tbName = "folder";
               var collection = database.GetCollection<BsonDocument>(tbName);
               var filterBuilder = Builders<BsonDocument>.Filter;
               var filter = filterBuilder.Eq("folderType", 1);
               var list = collection.Find(filter).ToList();
               foreach (BsonDocument doc in list)
               {
                   folderGuidList.Add(doc["folderGuid"].ToString());
               }
           }
           catch (Exception e)
           {
               Log(e, "err");
            }

            return folderGuidList;
       }
读取列表

删除


var result = collection.DeleteMany(filter);
var delNum= result.DeletedCount;

存在某字段

filterBuilder.Exists("program")

修改
var result = collection.UpdateMany(filter,mUpdateDocument);
delNum = result.ModifiedCount;

标签:c#,MongoDB,Driver,collection,filter,filterBuilder,result,var,folderGuidList
From: https://www.cnblogs.com/simadi/p/17044442.html

相关文章

  • 俺老孙画个圈-板框与安装孔-PCB系列教程1-10
    画个板子,要先划圈,把所有笨蛋元器件圈起来。这个圈,就是板子的边框,简称板框。自定义板框形状比较复杂的电路板,一般由专业的CAD结构工程师设计,并提供DWG或者DXF格式的文件给电......
  • 规则不是用来打破的-设计规则-PCB系列教程1-8
     走在路上,有交通规则;玩个游戏,也有游戏规则。画PCB,当然也有PCB的设计规则。PCB的规则,一般用于约束PCB的布局与布线行为,不满足规则的行为无法实现,或者能够检查出来。比如说在......
  • 电子设计教程51:16*16LED点阵屏驱动-74HC238译码器
      我尝试通过移位寄存器级联+三八译码器,实现用3跟控制线,驱动16*16LED点阵屏的效果。这是第三篇博客,讲述三八译码器的工作原理。  当驱动8×8LED点阵时,单片机至少需要发......
  • MC 末影人
    #include<iostream>#include"minecraft.h"usingnamespacestd;intx=225,y=115,z=23;TxMinecraftmc;voidTNT(){ mc.fillBlocks(x+0,y+4,z+3,x+2,y+6,z+1,251,1......
  • 电子设计教程49:16*16LED点阵屏驱动-74HC595的原理
      我尝试通过移位寄存器级联+三八译码器,实现用3跟控制线,驱动16*16LED点阵屏的效果。这是第一篇博客,讲述74HC595芯片的工作原理  一般情况下,使用单片机来控制LED。一个引......
  • 电子设计教程47:流水灯电路-74HC245驱动器
      上一节提到,如果想控制多于8个LED,74HC164就有点带不动了,就需要接功率更大的芯片了。这个芯片的功能是输入较小的电流,输出较大的电流,这种芯片被称为是驱动器。一般常用74H......
  • react event 防抖传参
    //echarts图表设置完毕后,添加事件监听,才用lodash.js的防抖函数useEffect(()=>{constzrMouseMove=(event)=>{console.log('[测试]event',e......
  • Codeforces Round #823 (Div. 2)
    A.B.C.DCodeforcesRound#823(Div.2)A.Planets-签到题意题意是一些卫星在一些轨道上,操作1花费1摧毁一个卫星,操作2花费\(y\)摧毁一个轨道上的所有卫星,问摧......
  • linux一次安装chromedrive记录
    先查看已安装的chrome版本[root@iZ8vbeixmmd1ntxae9oe19Z~]#google-chrome--versionGoogleChrome109.0.5414.74[root@iZ8vbeixmmd1ntxae9oe19Z~]#没有安装需......
  • 若依的springcloud运行
    1.再若依官网下载最新版springcloud地址:http://www.ruoyi.vip/2.下载下来后并不能直接运行,必须去nacos官网下载nacos并成功运行   选择下面的一项下载即可 ......