public async Task <IActionResult> AddData(string connectionName, string tableName, int page, string searchFields = "", string sortColumn = "", string sortDir = "") { var tableDataVM = new TableDataVM { TableList = await _util.GetTableList(connectionName), TableName = tableName, ConnectionName = connectionName }; tableDataVM.TableGroups = await _util.GetTableGroups(tableDataVM.TableList); var columnList = new List <TableColumnInfo>(); var tableDataDict = new PagedData { Data = new Dictionary <int, Row>() }; columnList = await _util.GetColumnInfo(connectionName, tableName); var tablemetadata = await _util.GetTableMetadata(connectionName, tableName); if (tablemetadata == null) { await _util.AddTableMetadata(connectionName, tableName); } tableDataVM.ColumnList = columnList; tableDataVM.TableDataList = tableDataDict; tableDataVM.SequenceName = tablemetadata.SequenceName; tableDataVM.SortColumn = sortColumn; tableDataVM.SortDir = sortDir; var searchFieldsArray = JsonConvert.DeserializeObject <List <SearchFieldInfo> >(searchFields); foreach (var field in searchFieldsArray) { tableDataVM.SearchValues[field.Name] = field.Value; } return(View(tableDataVM)); }