protected bool addItem(DataTableItemBaseModel NewDataItem) { bool canAddItemToTable = true; canAddItemToTable = NewDataItem.IsValid; if (canAddItemToTable) { canAddItemToTable = dbAddItem(NewDataItem); } return(canAddItemToTable); }
protected bool _addParametersInOrder(MySqlCommand cmd, DataTableItemBaseModel NewDataItem) { foreach (MySqlParameter parameter in _addItemStoredProcedureParameters) { if (!NewDataItem.AddParameterToCommand(cmd, parameter.ParameterName)) { return(false); } } return(true); }
protected bool updateItem(DataTableItemBaseModel UpdatedDataItem) { bool canUpdateItemToTable = true; canUpdateItemToTable = UpdatedDataItem.IsValid; if (canUpdateItemToTable) { canUpdateItemToTable = dbUpdateItem(UpdatedDataItem); } return(canUpdateItemToTable); }
protected void AddItemToDictionary(DataTableItemBaseModel NewItem) { bool AddedSuccessfully = addItem(NewItem); if (AddedSuccessfully && _newKeyValue > 0) { _keyToTitle.Add(_newKeyValue, NewItem.GetParameterValue("Name")); _titleToKey.Add(NewItem.GetParameterValue("Name"), _newKeyValue); } else { string errorMsg = "Database Error: Failed to add item"; MessageBox.Show(errorMsg); } }
private bool dbUpdateItem(DataTableItemBaseModel NewDataItem) { bool success = true; if (ReportProgrammerError(_updateItemStoredProcedureName, "_updateItemStoredProcedureName is not set!")) { return(false); } using (MySqlConnection conn = new MySqlConnection(_dbConnectionString)) { try { conn.Open(); using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = conn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = _updateItemStoredProcedureName; if (_addParametersInOrder(cmd, NewDataItem)) { cmd.ExecuteNonQuery(); // Some of the stored procedures return the new key in the last parameter // in those cases get the returned key so that the new row can be accessed. int paramtercount = cmd.Parameters.Count - 1; // indexing starts at 0 ends at count - 1 if (cmd.Parameters[paramtercount].Direction != ParameterDirection.Input) { uint.TryParse(cmd.Parameters[paramtercount].Value.ToString(), out _newKeyValue); } } else { success = false; } } } catch (Exception ex) { string errorMsg = "Database Error: " + ex.Message; MessageBox.Show(errorMsg); success = false; } } return(success); }