/// <summary> /// 重建索引 /// </summary> /// <param name="needIndexs"></param> /// <returns></returns> public async Task RebuilIndex(List <IndexSql> needIndexs) { List <Task> tasks = new List <Task>(); foreach (var need in needIndexs) { long page = 0, totalPage = 1; var database = DbContainer.GetDatabase(need.ConName); while (page < totalPage) { var pageData = database.Page <dynamic>((page + 1), 2000, need.Sql); totalPage = pageData.TotalPages; page = pageData.CurrentPage; tasks.Add(AppendIndex(pageData.Items, need.Columns)); } } await Task.WhenAll(tasks); }