private IAsyncDocumentSession OpenAsyncSessionInternal(string dbName,Dictionary<string, IAsyncDatabaseCommands> shardDbCommands) { EnsureNotClosed(); var sessionId = Guid.NewGuid(); var session = new AsyncShardedDocumentSession(dbName, this, listeners, sessionId, ShardStrategy, shardDbCommands); AfterSessionCreated(session); return session; }