Exemple #1
0
 /// <summary>
 /// Initializes a new instance of the MongoClient class.
 /// In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is
 /// not fully implemented due to the lack of a string normalization function in .NET Standard 1.5.
 /// Normalizing the password into Unicode Normalization Form KC beforehand MAY help.
 /// SCRAM-SHA-1 is the recommended alternative for now.
 /// </summary>
 /// <param name="settings">The settings.</param>
 public MongoClient(MongoClientSettings settings)
 {
     _settings          = Ensure.IsNotNull(settings, nameof(settings)).FrozenCopy();
     _cluster           = ClusterRegistry.Instance.GetOrCreateCluster(_settings.ToClusterKey());
     _operationExecutor = new OperationExecutor(this);
     if (settings.AutoEncryptionOptions != null)
     {
         _libMongoCryptController = new AutoEncryptionLibMongoCryptController(
             this,
             _cluster.CryptClient,
             settings.AutoEncryptionOptions);
     }
 }
 public static IMongoClient _mongocryptdClient(this AutoEncryptionLibMongoCryptController libMongoCryptController)
 {
     return((IMongoClient)Reflector.GetFieldValue(libMongoCryptController, nameof(_mongocryptdClient)));
 }