Example #1
0
        public void DeleteFlashcard(Flashcard target)
        {
            SQLiteConnection connection = new SQLiteConnection
            {
                ConnectionString = connectionString
            };

            connection.Open();

            // Create an SQL Command
            SQLiteCommand deleteCommand = new SQLiteCommand();

            // Fill SQL command parameters.
            deleteCommand.Connection  = connection;
            deleteCommand.CommandType = System.Data.CommandType.Text;

            deleteCommand.CommandText = "DELETE FROM Flashcards WHERE ID=@ID;";

            var idParam = new SQLiteParameter("@ID", target.ID);

            idParam.DbType = System.Data.DbType.Int32;
            deleteCommand.Parameters.Add(idParam);

            // Execute the command.
            deleteCommand.ExecuteNonQuery();


            connection.Close();
        }
Example #2
0
        public void AddFlashcard(Flashcard addition)
        {
            SQLiteConnection connection = new SQLiteConnection
            {
                ConnectionString = connectionString
            };

            connection.Open();

            // Create an SQL Command
            SQLiteCommand insertCommand = new SQLiteCommand();

            // Fill SQL command parameters.
            insertCommand.Connection = connection;

            insertCommand.CommandType = System.Data.CommandType.Text;
            insertCommand.CommandText = "INSERT INTO Flashcards (FrontSide, BackSide) VALUES(@frontSide, @backSide);";

            var frontSideParam = new SQLiteParameter("@frontSide", addition.ShowFront());

            frontSideParam.DbType = System.Data.DbType.String;
            insertCommand.Parameters.Add(frontSideParam);

            var backSideParam = new SQLiteParameter("@backSide", addition.ShowBack());

            backSideParam.DbType = System.Data.DbType.String;
            insertCommand.Parameters.Add(backSideParam);


            // Execute the command.
            insertCommand.ExecuteNonQuery();


            connection.Close();
        }
Example #3
0
        /// <summary>
        /// Convert tab separated values to a list of flashcards.
        /// </summary>
        /// <param name="contents">text with as many lines as there are flashcards.</param>
        /// <returns>a list of flashcards</returns>
        public static IList <Flashcard> FromTabSeparatedValues(string contents)
        {
            var flashcards = new List <Flashcard>();

            if (string.IsNullOrEmpty(contents))
            {
                return(flashcards);
            }
            string[] lines = contents.Split(new char[] { '\n' });

            foreach (string line in lines)
            {
                if (!string.IsNullOrEmpty(line))
                {
                    flashcards.Add(Flashcard.FromTabSeparatedValues(line));
                }
            }
            return(flashcards);
        }
Example #4
0
        public IList <Flashcard> GetFlashcards()
        {
            SQLiteConnection connection = new SQLiteConnection
            {
                ConnectionString = connectionString
            };

            connection.Open();

            // Create an SQL Command.
            SQLiteCommand command = new SQLiteCommand();


            // Fill SQL command parameters.
            command.Connection  = connection;
            command.CommandType = System.Data.CommandType.Text;
            command.CommandText = "SELECT ID, FrontSide, BackSide FROM Flashcards;";


            // Execute the command.
            SQLiteDataReader dataReader = command.ExecuteReader();
            // Read data and show to the console.

            // Read data and show to the console

            IList <Flashcard> flashcards = new List <Flashcard>();

            while (dataReader.Read())
            {
                var flashcard = new Flashcard(dataReader.GetString(1), dataReader.GetString(2));
                flashcard.ID = dataReader.GetInt32(0);
                flashcards.Add(flashcard);
            }

            connection.Close();

            return(flashcards);
        }