internal Task Update(DiscordClient client, ReadyEventArgs e) { foreach (var key in UpdateList.Select(x => x.Key).Distinct()) { RegisterCommands(UpdateList.Where(x => x.Key == key).Select(x => x.Value), key); } return(Task.CompletedTask); }
/// <summary> /// Get list of keys of all completed tasks /// </summary> /// <returns>List of keys</returns> public async Task <List <string> > GetKeyListAsync() { if (UpdateList == null) { await ReadDataAsync(); } return(UpdateList.Select(selector: x => x.Key).ToList()); }
public async Task <int> BulkUpdateAsync(params string[] UpdateColumns) { Check.Exception(UpdateColumns == null, "UpdateColumns is null"); if (_WhereColumnList != null && _WhereColumnList.Any()) { return(await this._Context.Fastest <T>().AS(_AsName).BulkUpdateAsync(UpdateList.Select(it => it.Item).ToList(), _WhereColumnList.Select(it => it.DbColumnName).ToArray(), UpdateColumns)); } else { var pkColumns = this._Context.EntityMaintenance.GetEntityInfo <T>().Columns.Where(it => it.IsPrimarykey).Select(it => it.DbColumnName).ToArray(); Check.Exception(pkColumns.Count() == 0, "need primary key"); return(await this._Context.Fastest <T>().AS(_AsName).BulkUpdateAsync(UpdateList.Select(it => it.Item).ToList(), pkColumns, UpdateColumns)); } }
public Task <int> BulkUpdateAsync() { var isWhereColums = _WhereColumnList != null && _WhereColumnList.Any(); if (isWhereColums) { var updateColumns = this._Context.EntityMaintenance.GetEntityInfo <T>().Columns.Where(it => !it.IsPrimarykey && !it.IsIdentity && !it.IsOnlyIgnoreUpdate && !it.IsIgnore).Select(it => it.DbColumnName ?? it.PropertyName).ToArray(); return(BulkUpdateAsync(updateColumns)); } else { return(this._Context.Fastest <T>().AS(_AsName).BulkUpdateAsync(UpdateList.Select(it => it.Item).ToList())); } }