Beispiel #1
0
        public bool IsRestored(string connectionName)
        {
            MongoServer server           = null;
            var         connectionString = ConfigurationManager.ConnectionStrings[connectionName]?.ConnectionString;

            if (string.IsNullOrEmpty(connectionString))
            {
                return(false);
            }

            try
            {
                var mongoUrl    = new MongoUrl(connectionString);
                var mongoClient = new MongoClient(mongoUrl);
                server = mongoClient.GetServer();

                return(server.GetDatabase(mongoUrl.DatabaseName).CollectionExists(MongoRestoreSettings.RestoredDbTokenCollection));
            }
            catch (FormatException ex)
            {
                Log.Error("Wrong connection string format", ex, this);
                throw;
            }
            finally
            {
                server?.Disconnect();
            }
        }
 /// <summary>
 /// 导入按钮事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnImport_Click(object sender, EventArgs e)
 {
     innerServer = MongoServer.Create(@"mongodb://localhost:28030");
     innerServer.Connect();
     innerDatabase = innerServer.GetDatabase("HearthStone");
     innerCollection = innerDatabase.GetCollection("Card");
     if (String.IsNullOrEmpty(ExcelPicker.SelectedPathOrFileName)) return;
     Import();
     GC.Collect();
     innerServer.Disconnect();
 }
Beispiel #3
0
        static void Main(string[] args)
        {
            MongoServer dbServer = MongoServer.Create();

            dbServer.Connect();

            MongoDatabase db         = dbServer.GetDatabase("test");
            var           collection = db.GetCollection("items").AsQueryable();

            var result = collection.FirstOrDefault();

            Console.WriteLine(result);
            dbServer.Disconnect();
            Console.ReadLine();
        }
Beispiel #4
0
        private void MarkAsRestored(MongoUrl mongoUrl)
        {
            MongoServer server = null;

            try
            {
                var mongoClient = new MongoClient(mongoUrl);
                server = mongoClient.GetServer();

                server.GetDatabase(mongoUrl.DatabaseName).CreateCollection(MongoRestoreSettings.RestoredDbTokenCollection);
            }
            finally
            {
                server?.Disconnect();
            }
        }
Beispiel #5
0
        static void Main(string[] args)
        {
            MongoServer dbServer = MongoServer.Create();

            dbServer.Connect();

            MongoDatabase database = dbServer.GetDatabase("test");

            foreach (var doc in database["test"].FindAll())
            {
                Console.WriteLine(doc);
            }

            Console.ReadLine();
            dbServer.Disconnect();
        }
        public void Run()
        {
            try
            {
                MongoDbServer = MongoServer.Create(MongoDbLocation);
                MongoDb = MongoDbServer.GetDatabase(MongoDbName);

                MongoCollection docs = MongoDb.GetCollection("docs");
                docs.Save(new { Id = Guid.NewGuid(), Name = "John"});

            }
            finally
            {
                Console.WriteLine("Finished");
                MongoDbServer.Disconnect();
            }
        }
 /// <summary>
 ///     测试连接
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void cmdTest_Click(object sender, EventArgs e)
 {
     CreateConnection();
     try
     {
         MongoServer srv = MongoDbHelper.CreateMongoServer(ref ModifyConn);
         srv.Connect();
         srv.Disconnect();
         MyMessageBox.ShowMessage("Connect Test", "Connected OK.");
     }
     catch (MongoAuthenticationException ex)
     {
         //需要验证的数据服务器,没有Admin权限无法获得数据库列表
         if (!SystemManager.IsUseDefaultLanguage)
         {
             MyMessageBox.ShowMessage(
                 SystemManager.MStringResource.GetText(StringResource.TextType.Exception_AuthenticationException),
                 SystemManager.MStringResource.GetText(
                     StringResource.TextType.Exception_AuthenticationException_Note), ex.ToString(), true);
         }
         else
         {
             MyMessageBox.ShowMessage("MongoAuthenticationException:", "Please check UserName and Password",
                                      ex.ToString(), true);
         }
     }
     catch (Exception ex)
     {
         //暂时不处理任何异常,简单跳过
         //无法连接的理由:
         //1.服务器没有启动
         //2.认证模式不正确
         if (!SystemManager.IsUseDefaultLanguage)
         {
             MyMessageBox.ShowMessage(
                 SystemManager.MStringResource.GetText(StringResource.TextType.Exception_NotConnected),
                 SystemManager.MStringResource.GetText(StringResource.TextType.Exception_NotConnected_Note),
                 ex.ToString(), true);
         }
         else
         {
             MyMessageBox.ShowMessage("Exception", "Mongo Server may not Startup or Auth Mode is not correct",
                                      ex.ToString(), true);
         }
     }
 }
Beispiel #8
0
 private void Dispose(bool disposing)
 {
     if (!this.disposed)
     {
         if (disposing)
         {
             try {
                 if (_Server != null)
                 {
                     _Server.Disconnect();
                 }
             }
             catch { }
         }
         disposed = true;
     }
 }
        public void SetData(string IdSession, string data, DateTime lastAccess)
        {
            MongoServer conn = GetConnection();
            MongoCollection sessionCollection = GetSessionCollection(conn);
            BsonDocument insertDoc = null;
            SafeMode _safeMode = new SafeMode(false);

            string sessItems = data;
            var ApplicationName = "IOL";
            Double timeout = this.GetTimeoutSet();
            object lockId = new object();

            
            try
            {
                if (!this.Exist(conn, IdSession, sessionCollection))
                {
                    insertDoc = new BsonDocument();
                    insertDoc.Add("_id", IdSession);
                    insertDoc.Add("ApplicationName", ApplicationName);
                    insertDoc.Add("Created", DateTime.Now.ToUniversalTime());
                    insertDoc.Add("Expires", DateTime.Now.AddMinutes((Double)timeout).ToUniversalTime());
                    insertDoc.Add("SessionItems", sessItems);

                    var query = Query.And(Query.EQ("_id", IdSession), Query.EQ("ApplicationName", ApplicationName), Query.LT("Expires", DateTime.Now.ToUniversalTime()));
                    sessionCollection.Remove(query, _safeMode);
                    sessionCollection.Insert(insertDoc, _safeMode);
                }
                else
                {
                    var query = Query.And(Query.EQ("_id", IdSession), Query.EQ("ApplicationName", ApplicationName));
                    var update = Update.Set("Expires", DateTime.Now.AddMinutes((Double)timeout).ToUniversalTime());
                    update.Set("SessionItems", sessItems);
                    sessionCollection.Update(query, update, _safeMode);
                }
            }
            catch (Exception e)
            {

            }
            finally
            {
                conn.Disconnect();
            }
        }
        private void MarkAsRestored(MongoUrl mongoUrl)
        {
            MongoServer server = null;

            try
            {
                var mongoClient = new MongoClient(mongoUrl);
#pragma warning disable CS0618 // Type or member is obsolete
                server = mongoClient.GetServer();
#pragma warning restore CS0618 // Type or member is obsolete

                server.GetDatabase(mongoUrl.DatabaseName).CreateCollection(MongoRestoreSettings.RestoredDbTokenCollection);
            }
            finally
            {
                server?.Disconnect();
            }
        }
Beispiel #11
0
        private static void mongoCountVerb(string verbStringRepresentation, long article, int sentence_index, int verb_index)
        {
            string connectionString = "mongodb://localhost";
            string databaseName     = "crawler";
            string collectionName   = "verbs";

            MongoServer   server   = MongoServer.Create(connectionString);
            MongoDatabase database = server.GetDatabase(databaseName);
            MongoCollection <BsonDocument> collection = database.GetCollection <BsonDocument>(collectionName);

            BsonDocument  seenOn      = new BsonDocument().Add("article", article).Add("sentence_index", sentence_index).Add("verb_index", verb_index);
            QueryComplete whereQuery  = Query.EQ("verb", verbStringRepresentation);
            UpdateBuilder updateQuery = Update.Inc("count", 1).Push("seen_on_sentence", seenOn);

            collection.Update(whereQuery, updateQuery, UpdateFlags.Upsert);

            server.Disconnect();
        }
        static public void Add_action(String login,String akcja,DateTime data)
        {
            var connectionString = "mongodb://localhost";
            var mongoClient = new MongoClient(connectionString);

            MongoServer mongoServer = mongoClient.GetServer();
            var database =  mongoServer.GetDatabase("new_db");
            var collection = database.GetCollection<BsonDocument>("Akcje");

            var document = new BsonDocument
            {
                {"Login",login},
                {"Działanie",akcja},
                {"Data",data}
            };

            collection.Insert(document);
            mongoServer.Disconnect();
        }
Beispiel #13
0
        /// <summary>
        /// 根据企业的设备列表获取数据的最小时间
        /// </summary>
        /// <param name="deviceList"></param>
        /// <returns></returns>
        public DateTime getMinDate(string DeviceSN)
        {
            //创建数据库链接
            MongoClient mc     = new MongoClient(ConnectionManager.MongodbConectionStr);
            MongoServer server = mc.GetServer();

            server.Connect();

            //获得数据库
            MongoDatabase   db       = server.GetDatabase("InspectDB");
            MongoCollection colOdata = db.GetCollection("InspectOriginalData");

            try
            {
                //插入原始监测数据
                QueryDocument query = new QueryDocument();

                //查询全部集合里的数据
                List <InspectItemData> list = colOdata.FindAllAs <InspectItemData>().Where(x => x.DeviceSN == DeviceSN).ToList();
                DateTime minDateTime        = DateTime.Now;
                foreach (InspectItemData iid in list)
                {
                    if (iid.InspectTime < minDateTime)
                    {
                        minDateTime = iid.InspectTime;
                    }
                }

                return(minDateTime);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                //关闭数据库连接
                if (server != null)
                {
                    server.Disconnect();
                }
            }
        }
Beispiel #14
0
        public override Server creack(String ip, int port, String username, String password, int timeOut)
        {
            MongoServer conn   = null;
            Server      server = new Server();

            try
            {
                String connectionstr = "mongodb://" + username + ":" + password + "@" + ip + ":" + port;
                if (password.Equals("空"))
                {
                    connectionstr = "mongodb://" + ip + ":" + port;
                }
                MongoServerSettings config = MongoServerSettings.FromUrl(MongoUrl.Create(connectionstr));
                //最大闲置时间

                config.MaxConnectionIdleTime = TimeSpan.FromSeconds(timeOut);
                //最大存活时间
                config.MaxConnectionLifeTime = TimeSpan.FromSeconds(timeOut);
                //链接时间
                config.ConnectTimeout = TimeSpan.FromSeconds(timeOut);
                //socket超时时间
                config.SocketTimeout = TimeSpan.FromSeconds(timeOut);
                conn = new MongoServer(config);
                conn.Connect();
                if (conn.State.Equals(MongoServerState.Connected))
                {
                    server.isSuccess = true;
                    server.banner    = conn.BuildInfo.VersionString;
                }
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (conn != null)
                {
                    conn.Disconnect();
                }
            }
            return(server);
        }
Beispiel #15
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (Request.Params.HasKeys())
     {
         try
         {
             string id = Request.Params.GetValues("id")[0].ToString();
             if (id == null)
             {
                 lblTitle.Text = "Error no: id given!";
             }
             else
             {
                 string        connectionstring = "mongodb://localhost";
                 MongoServer   server           = MongoServer.Create(connectionstring);
                 MongoDatabase pq = server.GetDatabase("pq");
                 MongoCollection <BsonDocument> images = new MongoCollection <BsonDocument>(pq, new MongoCollectionSettings <BsonDocument>(pq, "images"));
                 var          q     = Query.EQ("_id", new ObjectId(id));
                 BsonDocument image = images.FindOne(q);
                 if (image.Contains("title"))
                 {
                     lblTitle.Text = image["title"].ToString();
                 }
                 lblImageId.Text = image["_id"].ToString();
                 lblOwner.Text   = image["owner"].ToString();
                 lblMime.Text    = image["mime"].ToString();
                 lblSize.Text    = image["size"].ToString();
                 string url = "http://localhost:8085/?id=" + image["_id"].ToString();
                 if (image["height"] > 400 || image["width"] > 400)
                 {
                     url += "&width=400&height=400";
                 }
                 imgImage.ImageUrl = url;
                 server.Disconnect();
             }
         }
         catch (Exception ex)
         {
             lblTitle.Text = "Error no: id given!";
         }
     }
 }
        /// <summary>
        /// Creates the Schema which displays information about the connection to the user,
        /// and dynamically generates the driver as an assembly.
        /// </summary>
        /// <param name="cxInfo">the serialized connection properties.</param>
        /// <param name="assemblyToBuild">The location where the dynamically generated assembly should be created</param>
        /// <param name="nameSpace">The namespace of the driver class</param>
        /// <param name="typeName">The name of the driver class</param>
        /// <returns>A tree of ExplorerItem objects which is shown to the user in LinqPad's UI</returns>
        public override List <ExplorerItem> GetSchemaAndBuildAssembly(IConnectionInfo cxInfo, AssemblyName assemblyToBuild, ref string nameSpace, ref string typeName)
        {
            var             props      = propsSerializer.Deserialize(cxInfo.DriverData);
            List <Assembly> assemblies =
                props.AssemblyLocations.Select(LoadAssemblySafely).ToList();

            //refresh the init query
            if (props.InitializationQuery != null)
            {
                props.InitializationQuery = LinqPadQuery.CreateFrom(props.InitializationQuery.Location);
            }

            //refresh DB collections
            MongoServer mongo = null;

            try
            {
                mongo = MongoServer.Create(props.ConnectionString);
                mongo.TrimDatabaseMappings(props.CollectionTypeMappings);
            }
            finally
            {
                if (mongo != null)
                {
                    mongo.Disconnect();
                }
            }

            var code = new[] { GenerateDynamicCode(props, assemblies, nameSpace, typeName) }
            .Concat(GetStaticCodeFiles());

            //write inner class CustomInitQuery
            if (props.InitializationQuery != null)
            {
                code = code.Concat(new[] { this.GenerateCustomInitQuery(props.InitializationQuery, nameSpace) });
            }


            BuildAssembly(props, code, assemblyToBuild, GetDriverFolder);

            return(BuildSchema(props, assemblies));
        }
Beispiel #17
0
        public void FixtureTearDown()
        {
            // Disconnects from Mongo
            if (mongoServer != null)
            {
                mongoServer.Disconnect();
                mongoServer = null;
            }

            // Close mongo
            if (mongoProcess != null)
            {
                mongoProcess.Kill();
                mongoProcess = null;
            }

            // Remove local folder
            Thread.Sleep(1000);
            Directory.Delete(mongoDir, true);
        }
Beispiel #18
0
        static void Main(string[] args)
        {
            //链接字符串
            string connectionString = "mongodb://localhost";

            //数据库名
            string databaseName = "myDatabase";

            //定义Mongo服务
            MongoServer server = MongoServer.Create(connectionString);

            //获取databaseName对应的数据库,不存在则自动创建
            MongoDatabase mongoDatabase = server.GetDatabase(databaseName) as MongoDatabase;

            MongoCollection <BsonDocument> books = mongoDatabase.GetCollection <BsonDocument>("books");


            //链接数据库
            server.Connect();
            try
            {
                BsonDocument book = new BsonDocument
                {
                    { "author", "Ernest Hemingway" },
                    { "title", "For Whom the Bell Tolls" }
                };
                books.Insert(book);

                var query = new QueryDocument("author", "Ernest Hemingway");
                foreach (BsonDocument bookItem in books.Find(query))
                {
                    Console.WriteLine(book["author"]);
                }
            }
            finally
            {
                //关闭链接
                server.Disconnect();
            }
            Console.Read();
        }
Beispiel #19
0
        public Exercise CreateExerciseCollection(Exercise exercise)
        {
            var exerciseResponse = new Exercise();

            if (exercise.CreatePassword == CreatePassword)
            {
                MongoServer mongo = MongoServer.Create(DbConnectionString);
                try
                {
                    MongoDatabase database = null;

                    if (DbLocation.Equals("Local"))
                    {
                        database = mongo.GetDatabase("workout");
                    }
                    else
                    {
                        //below is for mongolab
                        MongoCredentials mc = new MongoCredentials(DbLogin, DbPassword);
                        database = mongo.GetDatabase(DbName, mc);
                        //end of monglab
                    }

                    MongoCollection <ExerciseInternal> exercises = database.GetCollection <ExerciseInternal>("exercise");
                    var exerciseInternal = new ExerciseInternal();
                    exerciseInternal = Maps.Map(exercise);
                    //var result = exercises.Insert(exerciseInternal);
                }
                catch (Exception ex)
                {
                    //TODO:  Add some logging...
                }
                finally
                {
                    mongo.Disconnect();
                }
            }


            return(exercise);
        }
Beispiel #20
0
        private void getAllUser()
        {
            // connect to database to get user informations
            MongoServerSettings settings = new MongoServerSettings();
            MongoServer         server   = new MongoServer(settings);

            server.Connect();

            MongoDatabase db = server.GetDatabase("DigitalPriceCenter");

            var users = db.GetCollection("Users");

            this.userList = new List <User>();

            foreach (User user in users.FindAllAs <User>())
            {
                this.userList.Add(user);
            }

            server.Disconnect();
        }
Beispiel #21
0
        public List <Exercise> GetExerciseCollection()
        {
            var modelExercises = new List <Exercise>();

            MongoServer mongo = MongoServer.Create(DbConnectionString);

            try
            {
                MongoDatabase database = null;

                if (DbLocation.Equals("Local"))
                {
                    database = mongo.GetDatabase("workout");
                }
                else
                {
                    //below is for mongolab
                    MongoCredentials mc = new MongoCredentials(DbLogin, DbPassword);
                    database = mongo.GetDatabase(DbName, mc);
                    //end of monglab
                }

                var exerciseCollection = database.GetCollection("exercise");
                var exercises          = database.GetCollection("exercise").FindAllAs <ExerciseInternal>().ToList();
                foreach (var exercise in exercises)
                {
                    modelExercises.Add(Maps.Map(exercise));
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            finally
            {
                mongo.Disconnect();
            }

            return(modelExercises);
        }
Beispiel #22
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["username"] == null || Session["user_id"] == null)
            {
                Response.Redirect("login.aspx");
            }
            if (IsPostBack)
            {
                if (imgFileUpload.HasFile)
                {
                    string        connectionstring = "mongodb://localhost";
                    Configuration config           = WebConfigurationManager.OpenWebConfiguration("~/");

                    MongoServer   server = MongoServer.Create(connectionstring);
                    MongoDatabase pq     = server.GetDatabase("pq");
                    MongoCollection <BsonDocument> images = new MongoCollection <BsonDocument>(pq, new MongoCollectionSettings <BsonDocument>(pq, "images"));
                    BsonDocument doc = new BsonDocument {
                        { "owner", Session["user_id"].ToString() },
                        { "mime", imgFileUpload.PostedFile.ContentType },
                        { "ext", imgFileUpload.FileName.Substring(imgFileUpload.FileName.LastIndexOf(".")) },
                        { "size", imgFileUpload.PostedFile.ContentLength },
                        { "title", (String.IsNullOrWhiteSpace(txtTitle.Text) ? null : txtTitle.Text) }
                    };
                    System.Drawing.Image img = System.Drawing.Image.FromStream(imgFileUpload.PostedFile.InputStream);
                    doc.Add("height", img.Height);
                    doc.Add("width", img.Width);
                    images.Insert(doc);

                    string fname = "C:\\mongo\\" + doc["_id"].ToString() + doc["ext"];
                    imgFileUpload.SaveAs(fname);

                    server.Disconnect();
                    Response.Redirect("image.aspx?id=" + doc["_id"].ToString());
                }
            }

            lblUsername.Text = Session["username"].ToString();
        }
        private void TestMongoConnection(MongoServer server, string database, string loggerName)
        {
            var db         = server.GetDatabase(database);
            var collection = db.GetCollection(loggerName);

            // Clear out test collection
            collection.RemoveAll();

            var logger = LogManager.GetLogger(loggerName);

            logger.LogException(
                LogLevel.Error,
                "Test Log Message",
                new Exception("Test Exception", new Exception("Inner Exception")));

            Thread.Sleep(2000);

            collection.FindAll().Count().Should().Be(1);

            var logEntry = collection.FindAll().First();

            Assert.IsTrue(logEntry.Contains("_id"));

            logEntry["level"].Should().Be(LogLevel.Error.ToString());
            logEntry["message"].Should().Be("Test Log Message");

            var exception = logEntry["exception"].AsBsonDocument;

            exception["message"].Should().Be("Test Exception");

            var innerException = exception["innerException"].AsBsonDocument;

            innerException["message"].Should().Be("Inner Exception");

            // Clean-up
            db.DropCollection(loggerName);
            server.Disconnect();
        }
        protected void EnsureAccessRights()
        {
            var url = new MongoUrl(this.ConnectionString);
            MongoClientSettings settings = MongoClientSettings.FromUrl(url);

            settings.DefaultCredentials = null;

            MongoCredentials adminCredentials = this.GetAdminCredentials();
            var           client        = new MongoClient(settings);
            MongoServer   server        = client.GetServer();
            MongoDatabase adminDatabase = server.GetDatabase(this.MongoAdministratorDatabase);

            MongoUser user = adminDatabase.FindUser(this.MongoAdministratorName);

            if (IsUserAdmin(user))
            {
                return;
            }

            user = new MongoUser(adminCredentials, false);
            adminDatabase.AddUser(user);
            server.Disconnect();
        }
Beispiel #25
0
        public Hashtable CheckDB()
        {
            Hashtable status = new Hashtable();

            GetCon();
            try
            {
                con.Connect();
                status["Connection :"] = "OK";
                return(status);
            }
            catch (MongoException e)
            {
                status["Connection :"]   = "Error";
                status["Error"]          = e.HResult.ToString();
                status["Has occurred :"] = e.Message.ToString();
                return(status);
            }
            finally
            {
                con.Disconnect();
            }
        }
Beispiel #26
0
        public bool create(Atributo t)
        {
            try
            {
                coll.Insert(t);

                return(true);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return(false);
            }
            finally
            {
                server.Disconnect();
            }
        }
Beispiel #27
0
 static void Main(string[] args)
 {
     var mongoServerAddress = new MongoServerAddress("127.0.0.1", 27017);
     var mongoServerSettings = new MongoServerSettings();
     mongoServerSettings.Server = mongoServerAddress;
     var mongoServer = new MongoServer(mongoServerSettings);
     mongoServer.Connect();
     IEnumerable<string> databases = mongoServer.GetDatabaseNames();
     var mongoDatabase = mongoServer.GetDatabase("classfrogdb");
     var classCollection = mongoDatabase.GetCollection("classes");
     classCollection.RemoveAll();
     var documents = classCollection.FindAll();
     ClassInstance instance = new ClassInstance();
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     classCollection.Insert(instance.NewDocument());
     mongoServer.Disconnect();
 }
Beispiel #28
0
        public List <InspectOriginalData> GetOriginalDatas(InspectOriginalData oData)
        {
            //创建数据库链接
            MongoClient mc     = new MongoClient(ConnectionManager.MongodbConectionStr);
            MongoServer server = mc.GetServer();

            server.Connect();

            //获得数据库
            MongoDatabase   db       = server.GetDatabase("InspectDB");
            MongoCollection colOdata = db.GetCollection("InspectOriginalData");

            try
            {
                //插入原始监测数据
                var query = new QueryDocument {
                };

                //查询全部集合里的数据
                MongoCursor <InspectOriginalData> inspectOriginalData = colOdata.FindAs <InspectOriginalData>(query);

                return(inspectOriginalData.ToList <InspectOriginalData>());
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                //关闭数据库连接
                if (server != null)
                {
                    server.Disconnect();
                }
            }
        }
 /// <summary>
 /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Dispose()
 {
     _mongoServer.Disconnect();
 }
Beispiel #30
0
 private void CleanUp()
 {
     _server.DropDatabase(DataBase);
     _server.Disconnect();
 }
        private void SetupStore(MongoServer mongoServer, string databaseName, string collectionName)
        {
            Contract.Requires<ArgumentNullException>(mongoServer != null);
            Contract.Requires<ArgumentNullException>(!string.IsNullOrEmpty(databaseName));
            Contract.Requires<ArgumentNullException>(!string.IsNullOrEmpty(collectionName));

            mongoServer.Connect();

            var db = _mongoServer.GetDatabase(databaseName);
            var coll = db.GetCollection(collectionName);
            coll.EnsureIndex("Events.EventSourceId", "Events.EventSequence");

            mongoServer.Disconnect();
        }
Beispiel #32
0
        private void TestMongoConnection(
            MongoServer server, 
            string database,
            string loggerName)
        {
            var db = server.GetDatabase(database);
            var collection = db.GetCollection(loggerName);

            // Clear out test collection
            collection.RemoveAll();

            var logger = LogManager.GetLogger(loggerName);

            logger.LogException(
                LogLevel.Error,
                "Test Log Message",
                new Exception("Test Exception", new Exception("Inner Exception")));

            Thread.Sleep(2000);

            collection.FindAll().Count()
                .Should().Be(1);

            var logEntry = collection.FindAll().First();

            logEntry["level"]
                .Should().Be(LogLevel.Error.ToString());
            logEntry["message"]
                .Should().Be("Test Log Message");
            
			var exception = logEntry["exception"].AsBsonDocument;
			
			exception["message"]
                .Should().Be("Test Exception");
            
			var innerException = exception["innerException"].AsBsonDocument;
			
			innerException["message"]
                .Should().Be("Inner Exception");

            // Clean-up
            db.DropCollection(loggerName);
            server.Disconnect();
        }
Beispiel #33
0
        static void Main()
        {
            // Create seed data

            BsonDocument[] seedData = CreateSeedData();

            // Standard URI format: mongodb://[dbuser:dbpassword@]host:port/dbname

            String uri = "mongodb://*****:*****@host:port/db";

            MongoUrl      url    = new MongoUrl(uri);
            MongoClient   client = new MongoClient(url);
            MongoServer   server = client.GetServer();
            MongoDatabase db     = server.GetDatabase(url.DatabaseName);

            /*
             * First we'll add a few songs. Nothing is required to create the
             * songs collection; it is created automatically when we insert.
             */

            var songs = db.GetCollection <BsonDocument>("songs");

            // Use Insert for single BsonDocument insertion.

            songs.InsertBatch(seedData);

            /*
             * Then we need to give Boyz II Men credit for their contribution to
             * the hit "One Sweet Day".
             */

            QueryDocument updateQuery = new QueryDocument {
                { "Title", "One Sweet Day" }
            };

            songs.Update(updateQuery, new UpdateDocument {
                { "$set", new BsonDocument("Artist", "Mariah Carey ft. Boyz II Men") }
            });

            /*
             * Finally we run a query which returns all the hits that spent 10
             * or more weeks at number 1.
             */

            QueryDocument findQuery = new QueryDocument {
                { "WeeksAtOne", new BsonDocument {
                      { "$gte", 10 }
                  } }
            };
            var cursor = songs.Find(findQuery).SetSortOrder(SortBy.Ascending("Decade"));

            foreach (var song in cursor)
            {
                var test = song["Decade"];
                Console.WriteLine("In the {0}, {1} by {2} topped the charts for {3} straight weeks",
                                  song["Decade"], song["Title"], song["Artist"], song["WeeksAtOne"]);
            }

            // Since this is an example, we'll clean up after ourselves.

            songs.Drop();

            // Only disconnect when your app is terminating.

            server.Disconnect();
        }
 public void Dispose()
 {
     _server.Disconnect();
 }
 public void Close()
 {
     Console.WriteLine("close connection");
     _server.Disconnect();
 }
Beispiel #36
0
 private static bool TestConnection(MongoServer server)
 {
     bool result = false;
     try
     {
         server.Connect();
         if (server.State == MongoServerState.Connected || server.State == MongoServerState.ConnectedToSubset)
         {
             result = true;
         }
     }
     finally
     {
         server.Disconnect();
     }
     return result;
 }