// didnt update the email creator field - a field that can not be changed public bool Insert(dataBoard board) // insert new board to database according to the dataBoard fields { using (var connection = new SQLiteConnection(_connectionString)) { int res = -1; SQLiteCommand command = new SQLiteCommand(null, connection); try { connection.Open(); command.CommandText = $"INSERT INTO {tableName} ({dataBoard.boardEmailCreator},{dataBoard.boardTaskCounterKey},{dataBoard.boardColumnCounterKey},{dataBoard.boardBoardId}) " + $"VALUES (@emailCreator,@taskCounterKey,@columnCounterKey,@boardId);"; SQLiteParameter emailParam = new SQLiteParameter(@"emailCreator", board.emailCreator); SQLiteParameter taskCounterKeyParam = new SQLiteParameter(@"taskCounterKey", board.taskCounterKey); SQLiteParameter columnCounterKeyParam = new SQLiteParameter(@"columnCounterKey", board.columnCounterKey); SQLiteParameter boardIdParam = new SQLiteParameter(@"boardId", board.boardId); command.Parameters.Add(emailParam); command.Parameters.Add(taskCounterKeyParam); command.Parameters.Add(columnCounterKeyParam); command.Parameters.Add(boardIdParam); command.Prepare(); res = command.ExecuteNonQuery(); } catch { log.Warn("Insert failed"); } finally { command.Dispose(); connection.Close(); } return(res > 0); } }
protected override dal ConvertReaderToObject(SQLiteDataReader reader) // reading from DB and create dataBoard Object { dataBoard result = new dataBoard(reader.GetString(0), Convert.ToInt32(reader.GetValue(1)), Convert.ToInt32(reader.GetValue(2)), Convert.ToInt32(reader.GetValue(3))); return(result); }