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


    下面演示下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;
                }
            }
    复制代码
  • 相关阅读:
    Codeforces Round #307 (Div. 2)E. GukiZ and GukiZiana
    bzoj2957: 楼房重建,分块
    分块入门。
    poj3690 Constellations
    Codeforces Round #451 (Div. 2)F. Restoring the Expression 字符串hash
    Codeforces Round #456 (Div. 2)D. Fishes
    Codeforces Round #450 (Div. 2)D. Unusual Sequences
    快速排序+分治法
    哈夫曼编码课程设计+最小优先对列建树。
    浅谈差分约束系统
  • 原文地址:https://www.cnblogs.com/qq75077027/p/2834786.html
Copyright © 2020-2023  润新知