安装nuget包
MongoDB.Driver
简单代码
using MongoDB.Bson;
using MongoDB.Driver;
using System.Buffers;
using System.Collections.Concurrent;
using System.Diagnostics;namespace ConsoleApp4
{internal class Program{static void Main(string[] args){var client = new MongoClient("mongodb://192.168.11.137");var database = client.GetDatabase("MyTestDB");var collection = database.GetCollection<UserInfo>("UserInfo");collection.InsertOne(new UserInfo{Name = "Jack",CreateTime = DateTime.Now,});var query = collection.Find(m => m.Name.Contains("Ja")).SortByDescending(m=>m.Name).ThenBy(m=>m.CreateTime).Skip(0).Limit(20).ToListAsync();}}class UserInfo{public ObjectId Id { get; set; }public string Name { get; set; }public DateTime CreateTime { get; set; }}
}
public ObjectId Id { get; set; } 必须要在model类中定义,否则查询会报错
UpdateOne
var database = client.GetDatabase("MyTestDB2");var collection = database.GetCollection<UserInfo>("UserInfo");var data = collection.Find(m => true).FirstOrDefault();data.Balance = 0;var update = Builders<UserInfo>.Update.Set(m=>m.Balance, data.Balance);foreach (BsonElement item in data.ToBsonDocument()){update = update.Set(item.Name, item.Value);}collection.UpdateOne(m => true, update);
为集合创建索引
var database = client.GetDatabase("MyTestDB");var collection = database.GetCollection<UserInfo>("UserInfo");collection.Indexes.CreateOne( Builders<UserInfo>.IndexKeys.Hashed(m=>m.Id)); //设置Id为哈希类型,并建立索引,哈希类型是否以后分片集群做准备的