欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-02-18 12:36:04
运用到的mongodb支持的c#驱动,当前版本为1.6.0 下载地址: 1,连接数据库 复制代码 代码如下:     ...

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

下载地址:

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;
            }
        }