// factory methods
/// <summary>
/// Creates a new instance or returns an existing instance of MongoDatabase. Only one instance
/// is created for each combination of database settings. Automatically creates an instance
/// of MongoServer if needed.
/// </summary>
/// <param name="builder">Server and database settings in the form of a MongoConnectionStringBuilder.</param>
/// <returns>
/// A new or existing instance of MongoDatabase.
/// </returns>
public static MongoDatabase Create(MongoConnectionStringBuilder builder)
{
var serverSettings = builder.ToServerSettings();
var databaseName = builder.DatabaseName;
return(Create(serverSettings, databaseName));
}