using MongoDB.Bson; using MongoDB.Driver; using System; using System.Collections.Generic; using System.Configuration; using System.Linq; namespace YFMongoBD { public class Db { private static readonly string connStr = "mongodb://192.168.0.1:27017/";//ConfigurationManager.ConnectionStrings["connStr"].ToString(); private static readonly string dbName = "lhctest";// ConfigurationManager.AppSettings["dbName"].ToString(); private static IMongoDatabase db = null; private static readonly object lockHelper = new object(); private Db() { } public static IMongoDatabase GetDb() { if (db == null) { lock (lockHelper) { if (db == null) { var client = new MongoClient(connStr); db = client.GetDatabase(dbName); } } } return db; } } public class MongoDbHelper { private IMongoDatabase db = null; public MongoDbHelper() { this.db = Db.GetDb(); } public IMongoCollection<T> GetConnection<T>() { return db.GetCollection<T>(typeof(T).Name); } } }
////調用 using MongoDB.Bson.IO; using MongoDB.Driver; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using YFMongoBD; using Newtonsoft; namespace TestMongoDB { [MongoDB.Bson.Serialization.Attributes.BsonIgnoreExtraElements]//防止沒有key時序列化報錯 public class yfTestClass { public string id { set; get; } public string name { set; get; } public string value { set; get; } public string key5 { set; get; } } class Program { private static MongoDbHelper db = new MongoDbHelper(); static void Main(string[] args) { var node = new yfTestClass(); node.name = "ssss"; node.value = "dddefwefew"; node.id = DateTime.Now.ToString("yyyyMMddhhmmss"); var connection = db.GetConnection<yfTestClass>(); //增長 //connection.InsertOne(node); //刪除 //connection.DeleteMany(aa=>aa.name== "dddefwefew"); //修改 //var update = Builders<yfTestClass>.Update.Set(s => s.key2, "keykeykey"); //connection.UpdateMany(aa=>aa.id == "20170313044509", update); //查 var list = connection.Find(u=>u.name=="ssss").SortBy(u=>u.id).ToList(); var jsonstr = Newtonsoft.Json.JsonConvert.SerializeObject(list); Console.WriteLine(jsonstr); Console.ReadLine(); } } }