/// <summary> /// Delete multiple databases in the same project, /// </summary> /// <param name="query">The list of databases to delete.</param> /// <param name="token">Optional cancellation token to use.</param> /// <returns>Empty response.</returns> public async Task <EmptyResponse> DeleteDatabasesAsync(RawDatabaseDelete query, CancellationToken token = default) { if (query is null) { throw new ArgumentNullException(nameof(query)); } var req = Oryx.Cognite.Raw.deleteDatabases <EmptyResponse>(query); return(await RunAsync(req, token).ConfigureAwait(false)); }
/// <summary> /// Delete multiple databases in the same project, /// </summary> /// <param name="databaseNames">The names of the databases to delete.</param> /// <param name="recursive">Default: false. When true, tables of this database are deleted with the database..</param> /// <param name="token">Optional cancellation token to use.</param> /// <returns>Empty response.</returns> public async Task <EmptyResponse> DeleteDatabasesAsync(IEnumerable <string> databaseNames, bool recursive = false, CancellationToken token = default) { if (databaseNames is null) { throw new ArgumentNullException(nameof(databaseNames)); } var dto = new RawDatabaseDelete() { Recursive = recursive, Items = databaseNames.Select(name => new RawDatabase() { Name = name }) }; return(await DeleteDatabasesAsync(dto, token).ConfigureAwait(false)); }