public MongoMetadata(string connectionString, MongoConfiguration.Metadata metadata = null) { this.connectionString = connectionString; this.Configuration = metadata ?? MongoConfiguration.Metadata.Default; lock (MetadataCache) { MongoMetadataCache metadataCache; MetadataCache.TryGetValue(this.connectionString, out metadataCache); if (metadataCache == null) { metadataCache = new MongoMetadataCache { DspMetadata = new DSPMetadata(ContainerName, RootNamespace), ProviderTypes = new Dictionary<string, Type>() }; MetadataCache.Add(this.connectionString, metadataCache); } this.dspMetadata = metadataCache.DspMetadata; this.providerTypes = metadataCache.ProviderTypes; } using (var context = new MongoContext(connectionString)) { PopulateMetadata(context); } }
private MongoMetadataCache GetOrCreateMetadataCache() { MongoMetadataCache metadataCache; MetadataCache.TryGetValue(this.connectionString, out metadataCache); if (metadataCache == null) { metadataCache = new MongoMetadataCache(ContainerName, RootNamespace); MetadataCache.Add(this.connectionString, metadataCache); } return(metadataCache); }
public MongoMetadata(string connectionString, MongoConfiguration.Metadata metadata = null) { _connectionString = connectionString; this.Configuration = metadata ?? MongoConfiguration.Metadata.Default; lock (s_metadataCache) { _instanceMetadataCache = GetOrCreateMetadataCache(); } var context = new MongoContext(connectionString); PopulateMetadata(context); }
public MongoMetadata(string connectionString, MongoConfiguration.Metadata metadata = null) { this.connectionString = connectionString; this.Configuration = metadata ?? MongoConfiguration.Metadata.Default; lock (MetadataCache) { this.instanceMetadataCache = GetOrCreateMetadataCache(); } using (var context = new MongoContext(connectionString)) { PopulateMetadata(context); } }
private MongoMetadataCache GetOrCreateMetadataCache() { MongoMetadataCache metadataCache; s_metadataCache.TryGetValue(_connectionString, out metadataCache); if (metadataCache == null) { metadataCache = new MongoMetadataCache(ContainerName, RootNamespace); s_metadataCache.Add(_connectionString, metadataCache); } return metadataCache; }