• C# 对MongoDB 进行增删改查的简单操作 (转)


    运用到的MongoDB支持的C#驱动,当前版本为1.6.0

    下载地址:https://github.com/mongodb/mongo-csharp-driver/downloads

    1,连接数据库

    复制代码
            /// <summary>
            /// 数据库连接
             /// </summary>
            private const string conn = "mongodb://127.0.0.1:27017";
            /// <summary>
            /// 指定的数据库
             /// </summary>
            private const string dbName = "mongodb_name";
            /// <summary>
            /// 指定的表
             /// </summary>
            private const string tbName = "table_text";
         //创建数据连接
             MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
             MongoDatabase db = server.GetDatabase(dbName);
                //获取表
             MongoCollection col = db.GetCollection(tbName);
    复制代码

     

     2、插入数据

    因为MongoDB没有表的概念,所以自插入数据之前定义好自己的数据模型

    User.cs

    下面是添加数据的代码

    复制代码
            /// <summary>
            /// 添加
            /// </summary>
            /// <param name="text">内容</param>
            /// <param name="articleId">文章ID</param>
            /// <param name="channelId">频道ID</param>
            /// <returns></returns>
            public static void Add(User t)
            {
                //创建数据连接
                MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
                MongoDatabase db = server.GetDatabase(dbName);
                //获取表
                MongoCollection col = db.GetCollection(tbName);
                //插入
                col.Insert(t);
    
            }
    复制代码

    3、删除操作

    复制代码
            /// <summary>
            /// 根据ObjectID 删除
            /// </summary>
            /// <param name="objId"></param>
            public static void Delete(string objId)
            {
                //创建数据连接
                MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
                MongoDatabase db = server.GetDatabase(dbName);
                //获取表
                MongoCollection<User> col = db.GetCollection<User>(tbName);
    
                IMongoQuery query = Query.EQ("_id", new ObjectId(objId));
    
                col.Remove(query);
            }
    复制代码

    4、修改

    复制代码
            /// <summary>
            /// 根据ObjectID 修改
            /// </summary>
            public static void Update(User t)
            {
                //创建数据连接
                MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
                MongoDatabase db = server.GetDatabase(dbName);
                //获取表
                MongoCollection<User> col = db.GetCollection<User>(tbName);
    
                BsonDocument bd = BsonExtensionMethods.ToBsonDocument(t);
    
                IMongoQuery query = Query.EQ("_id", t.Id);
    
                col.Update(query, new UpdateDocument(bd));
    
            }
    复制代码

    5、条件查询(简单)

    复制代码
            /// <summary>
            /// 根据ObjectID 查询
            /// </summary>
            public static TuCao SelectOne(string objId)
            {
                //创建数据连接
                MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
                MongoDatabase db = server.GetDatabase(dbName);
                //获取表
                MongoCollection<User> col = db.GetCollection<User>(tbName);
                //条件查询            
                return col.FindOne(Query.EQ("_id", new ObjectId(objId)));
            }
    复制代码

    6、查询全部

    复制代码
            /// <summary>
            /// 查询所有
            /// </summary>
            public static void SelectAll()
            {
                List<User> list = new List<User>();
    
                //创建数据连接
                MongoServer server = MongoServer.Create(conn);
                //获取指定数据库
                MongoDatabase db = server.GetDatabase(dbName);
                //获取表
                MongoCollection<User> col = db.GetCollection<User>(tbName);
                //查询全部
                list.AddRange(col.FindAll());
    
                //--------------------------------
                foreach (TuCao t in col.FindAll())
                {
                    string id = t.Id.ToString();
                    string text = t.Text;
                    DateTime dt = t.Createdate;
                }
            }
    复制代码

     

  • 相关阅读:
    IntelliJ IDEA 最新注册码
    tidyverse|数据分析常规操作-分组汇总(sumamrise+group_by)
    ComplexHeatmap|根据excel表绘制突变景观图(oncoplot)
    Tidyverse| XX_join :多个数据表(文件)之间的各种连接
    LDheatmap | SNP连锁不平衡图(LD)可视化,自己数据实现版!
    Tidyverse|数据列的分分合合,爱恨情仇
    R-ggpmisc|回归曲线添加回归方程,R2,方差表,香不香?
    R-rbind.fill|列数不一致的多个数据集“智能”合并,Get!
    R|tableone 快速绘制文章“表一”-基线特征三线表
    R|生存分析
  • 原文地址:https://www.cnblogs.com/zqn518/p/3305390.html
Copyright © 2020-2023  润新知