public void SaveColumnData(int ColumnOrder, ColumnDto ColumnsData, string TableName) { UserEntities db = new UserEntities(); var defaultColumnValues = db.ColumnUsersSettings.Where(x => x.ColumnText == ColumnsData.ColumnText && x.GridName == TableName).FirstOrDefault(); ColumnUsersSetting gridColumn = new ColumnUsersSetting(); gridColumn.IsVisible = true; gridColumn.ColumnWidth = ColumnsData.ColumnWidth; gridColumn.ColumnOrder = ColumnOrder; gridColumn.ColumnText = ColumnsData.ColumnText; gridColumn.GridName = TableName; gridColumn.ColumnType = defaultColumnValues.ColumnType; gridColumn.ColumnFilterId = defaultColumnValues.ColumnFilterId; db.ColumnUsersSettings.Add(gridColumn); db.SaveChanges(); }
public void SaveUpdateGridInfo(ColumnGridDetailsDto GridDetails, string TableName) { UserEntities db = new UserEntities(); var checkUserTableExists = db.ColumnUsersSettings.Where(x => x.GridName == TableName).ToList(); try { // Update Entries if record found if (checkUserTableExists.Count() > 0 && checkUserTableExists != null) { int ColumnOrder = 1; // update visible columns properties foreach (var item in GridDetails.visibleColumns) { var gridColumn = db.ColumnUsersSettings.Where(x => x.GridName == TableName && x.ColumnText == item.ColumnText).FirstOrDefault(); if (gridColumn == null) { SaveColumnData(ColumnOrder, item, TableName); } else { gridColumn.IsVisible = true; gridColumn.ColumnWidth = item.ColumnWidth; gridColumn.ColumnOrder = item.OrderBy; gridColumn.ColumnText = item.ColumnText; db.Entry(gridColumn).State = EntityState.Modified; db.SaveChanges(); } ColumnOrder = ColumnOrder + 1; } //update hidden columns properties foreach (var item in GridDetails.hiddenColumns) { var gridColumn = db.ColumnUsersSettings.Where(x => x.GridName == TableName && x.ColumnText == item.ColumnText).FirstOrDefault(); if (gridColumn == null) { SaveColumnData(0, item, TableName); } else { gridColumn.IsVisible = false; gridColumn.ColumnWidth = item.ColumnWidth; gridColumn.ColumnOrder = item.OrderBy; gridColumn.ColumnText = item.ColumnText; db.Entry(gridColumn).State = EntityState.Modified; db.SaveChanges(); } } } // Save Entries if record not found else { int ColumnOrder = 1; // save visible columns properties foreach (var item in GridDetails.visibleColumns) { // get default column values against table name and matching column name var defaultColumnValues = db.ColumnUsersSettings.Where(x => x.ColumnText == item.ColumnText && x.GridName == TableName).FirstOrDefault(); ColumnUsersSetting gridColumn = new ColumnUsersSetting(); gridColumn.IsVisible = true; gridColumn.ColumnWidth = item.ColumnWidth; gridColumn.ColumnOrder = ColumnOrder; gridColumn.ColumnText = item.ColumnText; gridColumn.GridName = TableName; gridColumn.ColumnType = defaultColumnValues.ColumnType; gridColumn.ColumnFilterId = defaultColumnValues.ColumnFilterId; db.ColumnUsersSettings.Add(gridColumn); db.SaveChanges(); ColumnOrder = ColumnOrder + 1; } // save hidden columns properties foreach (var item in GridDetails.hiddenColumns) { // get default column values against table name and matching column name var defaultColumnValues = db.ColumnUsersSettings.Where(x => x.ColumnText == item.ColumnText && x.GridName == TableName).FirstOrDefault(); ColumnUsersSetting gridColumn = new ColumnUsersSetting(); gridColumn.IsVisible = false; gridColumn.ColumnWidth = item.ColumnWidth; gridColumn.ColumnOrder = 0; gridColumn.ColumnText = item.ColumnText; gridColumn.GridName = TableName; gridColumn.ColumnType = defaultColumnValues.ColumnType; gridColumn.ColumnFilterId = defaultColumnValues.ColumnFilterId; db.ColumnUsersSettings.Add(gridColumn); db.SaveChanges(); } } } catch (Exception ex) { throw; } }