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