Example #1
0
        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));
        }