[转载]MongoDB及其C#驱动

[转载]MongoDB及其C#驱动 – 李占卫的网上家园 – 博客园.

1:简单介绍

MongoDB是一款分布式文档数据库,支持类似关型数据库的主从结构,文档以二进制Json形式存储,无锁,无事 务,有索引。

2:安装步骤

第一步:下载程序集http://www.mongodb.org/downloads

第 二部:解压并抽取相关的bin目录到C:\Mongo下(这个任意选择) ,并在该目录下建db文件夹。

第三部:打开CMD窗口,进入 到C:\Mongo\bin目录下,运行mongod.exe –dbpath=”c:\Mongo\db”

第四步:再开CMD窗口 (保持以前的窗口不关闭)运行mongo.exe。在这个窗口你可以执行简单的命令,以下简单列出几个

> j = { name : “mongo” };
{“name” : “mongo”}
> t = { x : 3 };
{ “x” : 3  }
> db.things.save(j);
> db.things.save(t);
> db.things.find();
{ “_id” : ObjectId(“4c2209f9f3924d31102bd84a”), “name” : “mongo” }
{ “_id” : ObjectId(“4c2209fef3924d31102bd84b”), “x” : 3 }
>
> for (var i = 1; i <= 20; i++) db.things.save({x : 4, j : i});
> db.things.find();
> var cursor = db.things.find();
> while (cursor.hasNext()) printjson(cursor.next());
> db.things.find().forEach(printjson);
> var cursor = db.things.find();
> printjson(cursor[4]);
> var arr = db.things.find().toArray();
> arr[5];
> db.things.find({name:”mongo”}).forEach(printjson);
> db.things.find({x:4}, {j:true}).forEach(printjson);
> printjson(db.things.findOne({name:”mongo”}));
> db.things.find().limit(3);

3:C# 版的驱动

以下列出几款C#版的驱动,并作简单介绍。

第一款:mongodb-csharp 项目地址:http://github.com/samus/mongodb-csharp

简 单介绍:该驱动是比较全的驱动,更新随度非常快,有人已经应用到项目中去,并且表现非常好。目前他们的团队正在致力于连接管理这部分功能的扩展例如:自动 重连,连接池等等。

第二款:mongodb-net 项目地址:http://code.google.com/p/mongodb-net/

简 单介绍:该开发还在进行中,有些功能还没有实现。

第三款:MongoDB.Emitter 项目地址:http://bitbucket.org/gwbasic/mongodb.emitter/

简 单介绍:提供了强类型支持

第四款:CSMongo 项目地址:http://somewebguy.wordpress.com/2010/02/21/building-a-mongo-driver-part-1/

简 单介绍:实现了部分功能,并且没有可下载的代码。但是你可以看他的博客以了解这种驱动的思想。

第五款:simple- mongodb 项目地址:http://code.google.com/p/simple-mongodb/

简 单介绍:没有提供源代码,以JSon为核心。

最后一个是对第一款某些地方的增强,地址http://deserialized.com/convert-csharp-classes-to-and-from-mongodb-documents-automatically-using-net-reflection

第 六款:NoRM 项目地址:http://github.com/atheken/NoRM

介 绍:增强了第一种,支持强类型。

排名部分先后,我现在再看的是 NoRM 和mongodb-csharp。

备 注:

虽然这些资料来自于网路,但是为了方便大家学习。我还是厚着脸皮放到首页,见谅啊。

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏