zoukankan      html  css  js  c++  java
  • MongoDB入门教程之C#驱动操作实例

    实体类:

    using MongoDB.Bson;
    
    namespace WindowsFormsApp
    {
        class User
        {
            //public ObjectId _id; //BsonType.ObjectId 这个对应了 MongoDB.Bson.ObjectId 
            public int UserId { get; set; }
            public string UserName { get; set; }
            public string Password { get; set; }
    
        }
    }

    测试代码:

    using System;
    using System.Windows.Forms;
    using MongoDB.Driver;
    
    namespace WindowsFormsApp
    {
        public partial class frmMongoDBTest : Form
        {
            //数据库连接字符串
            string conn = "mongodb://127.0.0.1:27017";
    
            //数据库名称
            string database = "RsdfDb";
           
            public frmMongoDBTest()
            {
                InitializeComponent();
            }
    
            /// <summary>
            /// 插入数据
            /// </summary>
            public void InsertData()
            {
                //创建数据库链接
                var Server = new MongoClient(conn).GetServer();
                //获得数据库RsdfDb
                var db = Server.GetDatabase(database);
    
                User user = new User();
                user.UserId = 0;
                user.UserName = "admin";
                user.Password = "1";
                //获得Act_User集合,如果数据库中没有,先新建一个
                var col = db.GetCollection("Act_User");
                //执行插入操作
                col.Insert<User>(user);
    
                user = new User();
                user.UserId = 1;
                user.UserName = "chenqp";
                user.Password = "1";
                //获得Act_User集合,如果数据库中没有,先新建一个
                col = db.GetCollection("Act_User");
                //执行插入操作
                col.Insert<User>(user);
    
                user = new User();
                user.UserId = 2;
                user.UserName = "yangh";
                user.Password = "1";
                //获得Act_User集合,如果数据库中没有,先新建一个
                col = db.GetCollection("Act_User");
                //执行插入操作
                col.Insert<User>(user);
            }
    
            /// <summary>
            /// 更新数据
            /// </summary>
            public void UpdateData()
            {
                //创建数据库链接
                var Server = new MongoClient(conn).GetServer();
                //获得数据库RsdfDb
                var db = Server.GetDatabase(database);
    
                //获取Act_User集合
                var col = db.GetCollection("Act_User");
                //定义获取“UserName”值为“admin”的查询条件
                var query = new QueryDocument { { "UserName", "admin" } };
                //定义更新文档
                var update = new UpdateDocument { { "$set", new QueryDocument { { "Password", "admin" } } } };
                //执行更新操作
                col.Update(query, update);
            }
    
            /// <summary>
            /// 删除数据
            /// </summary>
            public void DeleteData()
            {
                //创建数据库链接
                var Server = new MongoClient(conn).GetServer();
                //获得数据库RsdfDb
                var db = Server.GetDatabase(database);
    
                //获取Act_User集合
                var col = db.GetCollection("Act_User");
                //定义获取“UserName”值为“admin”的查询条件
                var query = new QueryDocument { { "Password", "admin" } };
                //执行删除操作
                col.Remove(query);
            }
    
            /// <summary>
            /// 查询数据
            /// </summary>
            public void QueryData()
            {
                //创建数据库链接
                var Server = new MongoClient(conn).GetServer();
                //获得数据库RsdfDb
                var db = Server.GetDatabase(database);
    
                //获取Act_User集合
                var col = db.GetCollection("Act_User");
                //定义获取“UserName”值为“admin”的查询条件
                var query = new QueryDocument { { "UserName", "chenqp" } };
    
                //查询全部集合里的数据
                var result1 = col.FindAllAs<User>();
    
                //查询指定查询条件的第一条数据,查询条件可缺省。
                var result2 = col.FindOneAs<User>();
    
                //查询指定查询条件的全部数据
                var result3 = col.FindAs<User>(query);
            }
    
            private void btnInsert_Click(object sender, EventArgs e)
            {
                InsertData();
                lblResult.Text = "Insert Data completed";
            }
    
            private void btnUpdate_Click(object sender, EventArgs e)
            {
                UpdateData();
                lblResult.Text = "Update Data completed";
            }
    
            private void btnDelete_Click(object sender, EventArgs e)
            {
                DeleteData();
                lblResult.Text = "Delete Data completed";
            }
    
            private void btnQuery_Click(object sender, EventArgs e)
            {
                QueryData();
            }
        }
        
        
    }
  • 相关阅读:
    线程、进程、死锁
    堆和栈的区别
    用winrar解压时提示无法设置安全数据 拒绝访问的解决方法
    句子迷
    【Sublime Text3】sublime 推荐必备插件与常用快捷键说明
    【计算机科学】知乎上关于计算机科学、程序语言一些有用的回答~(不定期更新)
    【SQL 函数】日期函数、类型转换、字符串函数
    【Sql Server函数】日期时间函数、日期查询今天、昨天、7天内、30天的数据
    【JAVA环境配置免安装】如何由jdk的安装版本改成非安装版本
    【SQL 社区】一些有用的SQL社区!(持续更新~~)
  • 原文地址:https://www.cnblogs.com/Bobby0322/p/5101974.html
Copyright © 2011-2022 走看看