static async Task MainAsync(string[] args) { var connectionString2 = "mongodb://localhost:27017,localhost:27018?replicaset=funny"; var connectionString = "mongodb://localhost:27017"; var client = new MongoClient(connectionString); var dbs= client.ListDatabases().ToList(); /** foreach (MongoDB.Bson.BsonDocument d in dbs) { Console.WriteLine(d.ToString()); } **/ var workdb = client.GetDatabase("test"); var personCollection = workdb.GetCollection<Person>("person"); var builder = Builders<Person>.Filter; FilterDefinition<Person> searchFilter = builder.And(builder.Lt("Age", 51) & builder.Eq("Name", "jones")); if (personCollection != null) { await workdb.DropCollectionAsync("person"); await AddDocuments(personCollection); /** //Search for only "jones" with age lte 30 by creating BSON Doc filter. var searchFilter = new BsonDocument("$and", new BsonArray { new BsonDocument("Age", new BsonDocument("$lte", 300)), new BsonDocument("Name", "jones") }); **/ await findDocuments(personCollection, searchFilter); } doReplace(personCollection); await findDocuments(personCollection, searchFilter); }
public void ListDatabases_should_invoke_the_correct_operation( [Values(false, true)] bool async) { var operationExecutor = new MockOperationExecutor(); var client = new MongoClient(operationExecutor, new MongoClientSettings()); if (async) { client.ListDatabasesAsync().GetAwaiter().GetResult(); } else { client.ListDatabases(); } var call = operationExecutor.GetReadCall<IAsyncCursor<BsonDocument>>(); call.Operation.Should().BeOfType<ListDatabasesOperation>(); }
private Boolean CheckConnection(String connection) { var url = new MongoUrl(connection); var client = new MongoClient(url); Task.Factory.StartNew(() => { var allDb = client.ListDatabases(); }); //forces a database connection Int32 spinCount = 0; ClusterState clusterState; while ((clusterState = client.Cluster.Description.State) != ClusterState.Connected && spinCount++ < 100) { Thread.Sleep(20); } return clusterState == MongoDB.Driver.Core.Clusters.ClusterState.Connected; }
/// <summary> /// 获取DB集合 /// </summary> public IEnumerable <BsonDocument> ListDataBases() { return(client.ListDatabases().ToEnumerable()); }