MongoDB是一个基于分布式文件存储的非关系型数据库。比其关系型数据库,效率更高,适合分布式系统。
本文讨论的是C#下MongoDB的基本使用。
首先要在nuget中安装
然后连接数据库
string con = @"mongodb://127.0.0.1:27017";
var client = new MongoClient(con);
连接数据库和表
//数据库
var hl = client.GetDatabase("Hopeless");
//表
IMongoCollection<BsonDocument> arti = hl.GetCollection<BsonDocument>("article");
对表对象进行新增操作。注意有两个花括号,先是new一个BsonDocument对象,然后在参数中传入要新增的表对象属性,一个属性一个花括号。
var bson = new BsonDocument { { "name", name },{ "title",title } };
arti.InsertOne(bson);
接着是根据条件删除记录,先定义一个过滤器,再根据过滤条件删除
var filter = Builders<BsonDocument>.Filter.Eq("name", dname);
arti.DeleteMany(filter);
然后是更新,依据的是过滤条件更新
var filter = Builders<BsonDocument>.Filter.Eq("name", oldname);
var setValue = Builders<BsonDocument>.Update.Set("name", newname);
arti.UpdateMany(filter, setValue);
最后是查询,查询时先new一个BsonDocument对象,这个对象可以不传参,不传参默认查询全部
var res = arti.Find(new BsonDocument() { { "name", cname } }).ToList();
foreach (var item in res)
{
Console.WriteLine(item);
}