log4net.Appender.MongoDB.BackwardCompatibility.GetDatabase C# (CSharp) Method

GetDatabase() public static method

public static GetDatabase ( MongoDBAppender appender ) : MongoDatabase
appender MongoDBAppender
return MongoDatabase
		public static MongoDatabase GetDatabase(MongoDBAppender appender)
		{
			var port = appender.Port > 0 ? appender.Port : 27017;
			var mongoConnectionString = new StringBuilder(string.Format("Server={0}:{1}", appender.Host ?? "localhost", port));
			if(!string.IsNullOrEmpty(appender.UserName) && !string.IsNullOrEmpty(appender.Password))
			{
				// use MongoDB authentication
				mongoConnectionString.AppendFormat(";Username={0};Password={1}", appender.UserName, appender.Password);
			}

			MongoServer connection = MongoServer.Create(mongoConnectionString.ToString());
			connection.Connect();
			return connection.GetDatabase(appender.DatabaseName ?? "log4net_mongodb");
		}

Usage Example

        public IMongoDatabase GetDatabase()
        {
            if (string.IsNullOrWhiteSpace(ConnectionString))
            {
                return(BackwardCompatibility.GetDatabase(this));
            }
            var mongoUrl = MongoUrl.Create(ConnectionString);
            var client   = new MongoClient(mongoUrl);
            var db       = client.GetDatabase(mongoUrl.DatabaseName ?? "log4net");

            return(db);
        }