private IList <string> GetValues() { FieldsValidator validator = new FieldsValidator(); IList <string> values = new List <string>(); string newValue; DataColumn column; TextBox[] textBoxes = personalDataPage.Controls.OfType <TextBox>().ToArray(); Label[] labels = personalDataPage.Controls.OfType <Label>().ToArray(); for (int i = 0; i < textBoxes.Length; i++) { newValue = textBoxes[i].Text.Trim(); column = Table.Columns[Table.Columns.IndexOf(labels[i].Text)]; if (!validator.CheckField(column, newValue)) { MessageBox.Show(string.Format("Поле '{0}' заповнене невірно.", Table.Columns[labels[i].Text].ColumnName), "Уважаемый пользователь!", MessageBoxButtons.OK, MessageBoxIcon.Information); return(null); } if (string.IsNullOrEmpty(newValue)) { values.Add("DEFAULT"); } else { values.Add(" '" + newValue + "'"); } } return(values); }
private void ProceedUpdate() { foreach (KeyValuePair <int, int> cellCoords in CellsUpdated.Keys) { DataTable table = (DataTable)dataGridView.DataSource; // Проверка на корректность содержимого полей FieldsValidator validator = new FieldsValidator(); if (!validator.CheckField(table.Columns[cellCoords.Value], CellsUpdated[cellCoords])) { continue; } string columnName = table.Columns[cellCoords.Value].ColumnName; string newValue = CellsUpdated[cellCoords]; // Изменить поля с датой в соответствие формату в БД if (table.Columns[columnName].DataType.Name.Equals("DateTime")) { newValue = validator.ConvertToPostgreSQLDate(newValue); } if (table.Columns.Contains("id")) { UpdateOneValueWithAnyColumn(table.TableName, columnName, newValue, "id", dataGridView.Rows[cellCoords.Key].Cells[table.Columns.IndexOf("id")].Value.ToString()); } if (table.TableName.Equals("department") || table.TableName.Equals("hall")) { UpdateOneValueWithAnyColumn(table.TableName, columnName, newValue, "name", dataGridView.Rows[cellCoords.Key].Cells[table.Columns.IndexOf("name")].Value.ToString()); } } }
private string GetValues(TextBox[] textBoxes) { Label[] labels = Controls.OfType <Label>().ToArray(); FieldsValidator validator = new FieldsValidator(); StringBuilder values = new StringBuilder(); string newValue; DataColumn column; for (int i = 0; i < textBoxes.Length; i++) { newValue = textBoxes[i].Text.Trim(); column = Table.Columns[Table.Columns.IndexOf(labels[i].Text)]; if (!validator.CheckField(column, newValue)) { MessageBox.Show(string.Format("Поле '{0}' заповнене невірно.", Table.Columns[labels[i].Text].ColumnName), "Уважаемый пользователь!", MessageBoxButtons.OK, MessageBoxIcon.Information); return(null); } // Изменить поля с датой в соответствие формату в БД if (column.DataType.Name.Equals("DateTime")) { newValue = validator.ConvertToPostgreSQLDate(newValue); } if (string.IsNullOrEmpty(newValue)) { values.Append(" DEFAULT"); } else { values.Append(" '").Append(newValue).Append("'"); } if (i + 1 < textBoxes.Length) { values.Append(","); } } return(values.ToString()); }