zoukankan      html  css  js  c++  java
  • MongoDatabase 数据访问助手类

    /// <summary>     /// 数据访问助手类 //https://mongolab.com/login/ 远程MongoDb免费数据库     /// </summary>     public class MongoHelper : IDisposable     {         private MongoServer mongoServer = null;         private MongoDatabase mongoDatabase = null;         private readonly static string connectionString = "mongodb://fn2008:123456@127.0.0.1:41338/iclound";//"mongodb://steven9701:fn2008@ds041337.mongolab.com:41337/ertn2012";         private readonly static string databaseName = "iclound";//admin:admin fn2008 权限

            ~MongoHelper()         {             Dispose ();         }

            public MongoHelper()         {             if (string.IsNullOrEmpty(connectionString))             {                 throw new ArgumentNullException("connectionString");             }

                //var settings = new MongoServerSettings             //{             //    Server = new MongoServerAddress("127.0.0.1", 41338),             //    MaxConnectionPoolSize = 1000,                              //};

                //建立连接             mongoServer = MongoServer.Create(connectionString);             mongoServer.Connect();

                if (string.IsNullOrEmpty(databaseName) == false)             {                 //取得指定Database                 mongoDatabase = mongoServer.GetDatabase(databaseName);             }         }

            /// <summary>         /// 切换到指定的数据库         /// </summary>         /// <param name="dbName"></param>         /// <returns></returns>         public MongoDatabase ResetDatabase(string dbName)         {             if (string.IsNullOrEmpty(dbName))             {                 throw new ArgumentNullException(dbName);             }

                mongoDatabase = mongoServer.GetDatabase(dbName);             return mongoDatabase;         }

            /// <summary>         /// 获取当前连接的数据库         /// </summary>         public MongoDatabase MongoDatabase         {             get             {                 if (mongoDatabase == null)                 {                     throw new Exception("当前连接没有指定任何数据库。请在构造函数中指定数据库名或者调用ResetDatabase()方法切换数据库。");                 }

                    return mongoDatabase;             }         }

            /// <summary>         /// 获取当前连接数据库的指定集合         /// </summary>         /// <typeparam name="T"></typeparam>         /// <returns></returns>         public MongoCollection<T> GetCollection<T>(string collectionName) where T : class         {             return this.MongoDatabase.GetCollection<T>(collectionName);         }

            /// <summary>         /// 获取当前连接数据库的指定集合         /// </summary>         /// <typeparam name="T"></typeparam>         /// <returns></returns>         public MongoCollection<T> GetCollection<T>(string collectionName,SafeMode safeMode) where T : class         {             return this.MongoDatabase.GetCollection<T>(collectionName, safeMode);         }

            /// <summary>         /// 获取当前连接数据库的指定集合         /// </summary>         /// <typeparam name="T"></typeparam>         /// <returns></returns>         public MongoCollection<T> GetCollection<T>(MongoCollectionSettings<T> mongoCollectionSettings) where T : class         {             return this.MongoDatabase.GetCollection<T>(mongoCollectionSettings);         }

            public void Dispose()         {             if (mongoServer != null)             {                 mongoServer = null;             }         }     }

  • 相关阅读:
    当年偶然发现的 Java Bug(JDK 9及之前仍未修复)
    Centos 网卡命名规范及信息查看(物理网卡,虚拟网卡)
    Git 合并多个 commit,保持历史简洁
    Java 常用验证方法(commons-validator,hutool)
    Linux 日常操作(质量团队培训材料)
    Linux 帮助命令及工具(tldr,man,help,info)
    springmvc返回html页面解决方案
    二进制和十进制来回转换
    二进制按位与(&) 按位或(|) 异或运算(^)
    Spring容器和springmvc容器的区别联系
  • 原文地址:https://www.cnblogs.com/fx2008/p/3108215.html
Copyright © 2011-2022 走看看