MongoDbHelper

来源:互联网 发布:汉诺塔算法检验 编辑:程序博客网 时间:2024/06/09 16:44
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();        }    }}


0 0
原创粉丝点击