C#操作MongoDB入门

1、MongoDB安装及配置

 (1)下载:

      mongodb官网 https://www.mongodb.com/download-center

      

      进入官网下载页,你会发现版本都是windows Server......  但是不要担心,本人亲测win10也可以用,所以放心大胆的下载就可以了。安装过程比较简单,下一步就可以了,就不多说了。

  (2)配置

    在“E:\MongoDB“(与默认安装位置不同,需要自己找到这个文件夹)目录下新建“data”文件夹,它将会作为数据存放的根文件夹。

    在“E:\MongoDB”目录下新建“log”文件夹,作为日志文件夹。

 

    配置Mongo服务端:

      以管理员身份打开CMD窗口,按照如下方式输入命令:
      > E:
      > cd MongoDB

      >cd bin
      > mongod --dbpath "E:\MongoDB\data"

 

      然后在浏览器输入:http://localhost:27017/,可以看到如下提示:


      You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number (可能会和这个不太一样,有字就行)

      如此,MongoDB数据库服务已经成功启动了。

 

    封装服务:

      还是以管理员身份运行cmd,进入bin目录,执行下列命令
      >mongod -dbpath "D:\MongoDB\data" -logpath "D:\MongoDB\log\MongoDB.log" -install -serviceName "MongoDB"

      这里--MongoDB.log就是开始建立的日志文件,--serviceName "MongoDB" 服务名为MongoDB。

      接着启动mongodb服务

      > E:\MongoDB>NET START MongoDB

      服务启动成功后可以测试一下

      进入bin目录,输入mongo显示如下信息,则服务启动成功。

      E:\MongoDB\bin>mongo
      MongoDB shell version: 3.2.9
      connecting to: test
      >

      至此安装配置就完成了。

2、安装MongoDB的C#驱动

    打开C#,新建项目,点击 工具>Nuget程序包管理器>管理解决方案的Nuget程序包>联机,

    在搜索栏搜索mongodb

    安装MongoDB.Driver,MongoDB.Bson,MongoDB.Driver.Core三个程序包。

    然后添加引用

    using MongoDB.Driver;
    using MongoDB.Bson;

3、代码

  接下来就是写代码了,以下是我写的最简单的增删改查操作(水平有限,凑合看)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MongoDB.Driver;
using MongoDB.Bson;


namespace MongoDBTest
{
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Mongo();
        }

        public void Mongo()
        {
            //建立连接
            var client = new MongoClient();
            //建立数据库
            var database = client.GetDatabase("TestDb");
            //建立collection
            var collection = database.GetCollection<BsonDocument>("foo");

            var document = new BsonDocument
            {
                {"name","MongoDB"},
                {"type","Database"},
                {"count",1},
                {"info",new BsonDocument{{"x",203},{"y",102}}}
            };
            //插入数据
            collection.InsertOne(document);

            var count = collection.Count(document);
            Console.WriteLine(count);

            //查询数据
            var document1 = collection.Find(document);
            Console.WriteLine(document1.ToString());

            //更新数据
            var filter = Builders<BsonDocument>.Filter.Eq("name", "MongoDB");
            var update = Builders<BsonDocument>.Update.Set("name", "Ghazi");

            collection.UpdateMany(filter, update);

            //删除数据
            var filter1 = Builders<BsonDocument>.Filter.Eq("count", 101);

            collection.DeleteMany(filter1);

            BsonDocument document2 = new BsonDocument();
            document2.Add("name", "MongoDB");
            document2.Add("type", "Database");
            document2.Add("count", "1");

            collection.InsertOne(document2);
        }
    }
}

  

4、参考资料

  http://mongodb.github.io/mongo-csharp-driver/2.2/getting_started/ 这个一定要静下心去看,虽然是英文的,但是看代码就行,还是不难的。

  http://www.cnblogs.com/qq75077027/category/441114.html 这个是大神写的,讲的很全面。

  http://wenku.baidu.com/link?url=NYAYJfx907QwrzVmcvrZAYqZUML6tiqClsJMNIxKjmR MongoDB权威指南中文版。

posted @ 2017-11-30 16:05  荆棘中的百合花  阅读(8725)  评论(0编辑  收藏  举报