vs2019 dependencies - righ click menu NuGet Packages
search ‘MongoDB.Driver’ and install
连接
using MongoDB.Driver;
// mongodb://localhost:27017 mongodb://192.168.0.xx:27017 MongoClient dbClient = new MongoClient("mongodb://localhost");
var dbList = dbClient.ListDatabases().ToList();
var database = dbClient.GetDatabase("stockServiceDoc"); var collection = database.GetCollection<BsonDocument>("capital");
查询
var cursor = collection.Find(highExamScoreFilter).ToCursor(); foreach (var document in cursor.ToEnumerable()) { Console.WriteLine(document); }
// all documents var documents = collection.Find(new BsonDocument()).ToList();
// 正则过滤, 名字 _day 结尾 var dbDatas = client.GetDatabase("stockDataAKShare"); var bre = new BsonRegularExpression("_day$"); var copt = new ListCollectionsOptions { Filter = Builders<BsonDocument>.Filter.Regex("name", bre) }; var collectionsWithMatchingNames = dbDatas.ListCollections(copt).ToList().Select(col => col["name"]); foreach (var coll in collectionsWithMatchingNames) { // find one document. fetch data var doc = database.GetCollection<Model_stock_rank>(coll.ToString()); var results = doc.Find(x => x.date == date); }
排序
var sort = Builders<BsonDocument>.Sort.Descending("student_id");
var highestScores = collection.Find(highExamScoreFilter).Sort(sort); var highestScore = collection.Find(highExamScoreFilter).Sort(sort).First();
Console.WriteLine(highestScore);
插入
还没找到插入失败的处理方式。遇到问题了在处理吧
public int save_capital(ref Capital obj) { var database = dbClient.GetDatabase("stockServiceDoc"); var collection = database.GetCollection<BsonDocument>("capital"); collection.InsertOne(obj.ToBsonDocument()); m_capital.Insert(0,obj); return 0; }