鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 数据库 > SQLite > >

C#操作MongoDB入门

来源:互联网 作者:佚名 时间:2017-09-09 08:21
1、MongoDB安装及配置 (1)下载: mongodb官网 https://www.mongodb.com/download-center 进入官网下载页,你会发现版本都是windows Server...... 但是不要担心,本人亲测win10也可以用,所以放心大胆的下载就可以了。安装过程比较简单,下一步就可以了,就

 

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、代码

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

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Threading.Tasks;
 9 using System.Windows.Forms;
10 using MongoDB.Driver;
11 using MongoDB.Bson;
12 
13 
14 namespace MongoDBTest
15 {
16     public partial class Form1 : Form
17     {
18 
19         public Form1()
20         {
21             InitializeComponent();
22         }
23 
24         private void Form1_Load(object sender, EventArgs e)
25         {
26             Mongo();
27         }
28 
29         public void Mongo()
30         {
31             //建立连接
32             var client = new MongoClient();
33             //建立数据库
34             var database = client.GetDatabase("TestDb");
35             //建立collection
36             var collection = database.GetCollection<BsonDocument>("foo");
37 
38             var document = new BsonDocument
39             {
40                 {"name","MongoDB"},
41                 {"type","Database"},
42                 {"count",1},
43                 {"info",new BsonDocument{{"x",203},{"y",102}}}
44             };
45             //插入数据
46             collection.InsertOne(document);
47 
48             var count = collection.Count(document);
49             Console.WriteLine(count);
50 
51             //查询数据
52             var document1 = collection.Find(document);
53             Console.WriteLine(document1.ToString());
54 
55             //更新数据
56             var filter = Builders<BsonDocument>.Filter.Eq("name", "MongoDB");
57             var update = Builders<BsonDocument>.Update.Set("name", "Ghazi");
58 
59             collection.UpdateMany(filter, update);
60 
61             //删除数据
62             var filter1 = Builders<BsonDocument>.Filter.Eq("count", 101);
63 
64             collection.DeleteMany(filter1);
65 
66             BsonDocument document2 = new BsonDocument();
67             document2.Add("name", "MongoDB");
68             document2.Add("type", "Database");
69             document2.Add("count", "1");
70 
71             collection.InsertOne(document2);
72         }
73     }
74 }
View Code

 

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权威指南中文版。

 

  

网友评论
<