c#.net連線mongodb入門(一)
阿新 • • 發佈:2018-12-24
1.環境:
windows7
vs2010
2.下載驅動程式
https://github.com/mongodb/mongo-csharp-driver/downloads
我下載的是最新的版本 CSharpDriver-1.7.0.4714.zip
解壓後,將壓縮包中的兩個dll檔案新增到vs工程中
MongoDB.Bson.dll
MongoDB.Driver.dll
3.首先建立對應的實體類
using MongoDB.Bson; namespace CodeFactory.mongo { class PersonEntity { public ObjectId _id { get; set; } public string name { get; set; } public int age { get; set; } } }
4.啟動mongodb服務
5.連線資訊
//連線資訊 string conn = "mongodb://localhost"; string database = "test"; string collection = "user"; MongoServer mongodb = MongoServer.Create(conn); // 連線資料庫 MongoDatabase mongoDataBase = mongodb.GetDatabase(database); // 選擇資料庫名 MongoCollection mongoCollection = mongoDataBase.GetCollection(collection); // 選擇集合,相當於表 mongodb.Connect();
6.新增資料
PersonEntity person = new PersonEntity();
person.name = "jack6";
person.age = 26;
mongoCollection.Insert(person);
MessageBox.Show("新增成功!");
7.查詢
7.1全部查詢
string msg = string.Empty; // 全部查詢 MongoCursor<PersonEntity> mc = mongoCollection.FindAllAs<PersonEntity>(); foreach (PersonEntity person in mc) { msg += "_id:" + person._id.ToString() + " name:" + person.name.ToString() + " age:" + person.age.ToString() + "\n"; } MessageBox.Show(msg);
7.2單條件查詢
msg = "";
// 單條件查詢
QueryDocument query = new QueryDocument("name", "jack6");
mc = mongoCollection.FindAs<PersonEntity>(query);
foreach (PersonEntity person in mc)
{
msg += "_id:" + person._id.ToString() + " name:" + person.name.ToString() + " age:" + person.age.ToString() + "\n";
}
MessageBox.Show(msg);
7.3多條件查詢
msg = "";
// 多條件查詢
QueryDocument query = new QueryDocument
{
{"name", "jack6"},
{"age", 26}
};
mc = mongoCollection.FindAs<PersonEntity>(query);
foreach (PersonEntity person in mc)
{
msg += "_id:" + person._id.ToString() + " name:" + person.name.ToString() + " age:" + person.age.ToString() + "\n";
}
MessageBox.Show(msg);
8.更新資料
// 多條件查詢
QueryDocument query = new QueryDocument
{
{"name", "jack6"},
{"age", 26}
};
// 修改一個值
//var update = new UpdateDocument {
// { "$set", new BsonDocument("age", 30) }
//};
// 修改多個值
var update = new UpdateDocument {
{ "$set", new BsonDocument{
{"name", "jack7"},
{"age", 31}
} }
};
mongoCollection.Update(query, update);
MessageBox.Show("修改成功!");
9.刪除資料
// QueryDocument query = new QueryDocument("name", "jack7");
// 多條件查詢
QueryDocument query = new QueryDocument
{
{"name", "jack7"},
{"age", 31}
};
mongoCollection.Remove(query);
MessageBox.Show("刪除成功!");
以上