您的位置:首页 > 数据库

C#Asp.Net中mongo数据库的基本使用

2015-12-24 15:58 633 查看

mongo数据库的C#驱动

在Mongo的官方网站上下载C#版驱动,一共两个DLL文件“MongoDB.Bson.dll”和“MongoDB.Driver.dll”。之后,将这两个DLL文件添加引用到项目程序中,在类中通过using引用即可。
using MongoDB.Driver;
using MongoDB.Bson;

Mongo数据库的C#驱动源文件可以从git库中下载:https://github.com/mongodb/mongo-csharp-driver
Mongo数据库的C#官方文档地址:http://api.mongodb.org/csharp/

mongo数据库的连接

C#的Mongo数据库的连接方式这里介绍两种,如下。
一般的Mongo数据库C#连接:

MongoClient	client = new MongoClient("mongodb://127.0.0.1:27107"); 
//"mongodb://[username:password@]hostname[:port][/[database][?options]]"
MongoServer  server = client.GetServer();
MongoDatabase Database = server.GetDatabase("user"); // user 是Mongo数据库中的一个集合名(相当于表名)

更健壮的Mongo数据库C#连接:

MongoClient  client = new MongoClient("mongodb://username:password@127.0.0.1:27107");
//完整的连接字符:"mongodb://[username:password@]hostname[:port][/[database][?options]]"
MongoServer  server = client.GetServer();
MongoCredentials credentials = new MongoCredentials("username", "password");
MongoDatabase Database = server.GetDatabase("user", credentials);// user 是Mongo数据库中的一个集合名(相当于表名)


mongo数据库的增删改查

简单的查询:
List<User> list = new List<User>();
MongoCollection<User> col = Database.GetCollection<User>("user");
MongoCursor<User> mcList = col.FindAll();  // col.find(Query.EQ("name","zhangsan"));
list.AddRange(mcList );


简单的增加:
BsonDocument doc = new BsonDocument();
User user = new User();
doc.Add("_id",new ObjectId());
doc.Add("name", user.name);
doc.Add("age", user.age);

MongoCollection col = Database.GetCollection("user");
WriteConcernResult wResult = col.Insert(doc);



简单的修改:
string id = "5660012b7f1ef53430f58461";
MongoCollection<User> col = Database.GetCollection<User>("user");
var query = Query.EQ("_id", "id); // 查询条件
var sortBy = SortBy.Descending("name"); // 查询顺序
var update = Update
.Set("age", "21")
.Set("length", "175"); // 修改的内容
var result = col.FindAndModify(query, sortBy, update, true);



简单的删除:
MongoCollection<User> col = Database.GetCollection<User>("user");
string id = "5660012b7f1ef53430f58461";
IMongoQuery query = Query.EQ("_id", new ObjectId(id));
WriteConcernResult removeResult2 = col.Remove(query);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# Mongo C#Mongo数据库