C#操作MongoDB入门

摘要:
执行以下命令>然后启动mongodb服务>单击工具>Nuget包管理器>然后使用MongoDB添加引用。驾驶员7使用System.Text;EventArgse)25{26Mongo();

1、MongoDB安装及配置

  (1)下载:

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

      C#操作MongoDB入门第1张

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

  (2)配置

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

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

    配置Mongo服务端:

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

      >cd bin
      > mongod --dbpath "E:MongoDBdata"

      然后在浏览器输入: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:MongoDBdata" -logpath "D:MongoDBlogMongoDB.log" -install -serviceName "MongoDB"

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

      接着启动mongodb服务

      > E:MongoDB>NET START MongoDB

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

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

      E:MongoDBin>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、代码

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

C#操作MongoDB入门第2张C#操作MongoDB入门第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权威指南中文版。

  

免责声明:文章转载自《C#操作MongoDB入门》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇tomcat进程不能完全关闭的处理办法零开始Android逆向教程(一)——初探Android逆向下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python基础学习-TCP的粘包问题

一、什么是粘包(粘包问题的原因) 所谓粘包问题主要还是因为接收方不知道消息之间的界限,不知道一次性提取多少字节的数据所造成的。 只有TCP有粘包现象,UDP永远不会粘包,tcp的客户端与服务端进行通信的时候是以一种数据流的形式, 首先需要掌握一个socket收发消息的原理: 服务端把要发送的数据送到服务端的缓存,通过网卡把数据从服务端的缓存到客户端的缓存...

数据库增删改查

一. 请写出数据库分离和附加的步骤   选中数据库右键→任务→分离   选中数据库右键→附加 二. 请写出数据库导出SQL脚本的步骤   选中数据库右键→生成脚本 三. 请写出SQL Server的四种完整性约束   实体完整性束  域完整性约束  引用完整性约束  自定义完整性约束 四. 如何设置表的主键和标识列   右键 △ 设置主键   标识列在标识...

二十、异常捕获及处理详解

代码中被[]包含的表示可选,|符号分开的表示可选其一。 需求背景 我们在写存储过程的时候,可能会出现下列一些情况: 插入的数据违反唯一约束,导致插入失败 插入或者更新数据超过字段最大长度,导致操作失败 update影响行数和期望结果不一致 遇到上面各种异常情况的时,可能需要我们能够捕获,然后可能需要回滚当前事务。 本文主要围绕异常处理这块做详细的介绍。...

vue项目动态新增表单、图片、文件

<div class="type_box" v-for="(item,index) in attrList" :key="item.id"> <div class="add-row"> <span class="label-span">key<...

使用SpringBoot Admin监控SpringCloud微服务

spring-boot admin的github地址:https://github.com/codecentric/spring-boot-admin 本文基于SpringCloud的环境和配置上增加配置信息,而不是从0开始的配置。 一、搭建admin服务端 1、引入pom <properties> <spring-boot-a...

Linux 配置Samba服务

查看系统下是否已经安装了sambarpm -qa |grep samba 安装sambayum -y install samba 配置samba创建目录sambamkdir -p /home/samba 修改samba权限chmod 777 /home/samba 关闭防火墙service iptables stop 配置smb.conf设置不需要密码访...