public DatabaseOptionsBuilder <TDatabase> UseConnectionString(string connectionString)
        {
            var connectionStringBuilder = new DbConnectionStringBuilder()
            {
                ConnectionString = connectionString
            };

            var databaseId = connectionStringBuilder.ContainsKey("DatabaseId")
                ? connectionStringBuilder["DatabaseId"].ToString()
                : null;

            var preferredLocation = connectionStringBuilder.ContainsKey("PreferredLocation")
                ? connectionStringBuilder["PreferredLocation"].ToString()
                : null;

            Options = new DatabaseOptions <TDatabase>
            {
                Endpoint          = connectionStringBuilder["AccountEndpoint"].ToString(),
                Key               = connectionStringBuilder["AccountKey"].ToString(),
                DatabaseId        = databaseId,
                PreferredLocation = preferredLocation
            };
            return(this);
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="options"></param>
 /// <param name="initialize">Pass true of automatic initialization of database and collection objects is desired and false if manual initialization is desired.</param>
 protected CosmosDatabase(DatabaseOptions <TImplementation> options, bool initialize = true)
     : base(options, initialize)
 {
 }
 public DatabaseOptionsBuilder <TDatabase> UseConfiguration(IConfiguration configuration)
 {
     Options = configuration.Get <DatabaseOptions <TDatabase> >();
     return(this);
 }