コード例 #1
0
ファイル: Model.cs プロジェクト: N-janas/Flashcards
 public void UpdateFlipCardKnowledge(FlipCardKnowledge flipKnowledge)
 {
     if (FlipCardKnowledgeExist(flipKnowledge))
     {
         // Edycja (użycie Update)
         // Znajdź poprzednią wersję
         var oldLevel = FlipCardKnowledges[FlipCardKnowledges.IndexOf(flipKnowledge)];
         // Czy zmienił poziom w danej krotce
         if (oldLevel.Knowledge != flipKnowledge.Knowledge)
         {
             // Jeśli tak to edytuj w bazie
             if (SetOfFlipCardKnowledges.EditFlipCardKnowledge(flipKnowledge, oldLevel.Id))
             {
                 // i edytuj w kolekcji
                 flipKnowledge.Id = oldLevel.Id;
                 FlipCardKnowledges[FlipCardKnowledges.IndexOf(oldLevel)] = flipKnowledge;
             }
         }
     }
     else // Jeśli nowa krotka to
     {
         // Dodaj nowe ( użycie SetOf...Add (index się doda))
         if (SetOfFlipCardKnowledges.AddNewFlipCardKnowledge(flipKnowledge))
         {
             // Dodaj do listy (z indexem)
             FlipCardKnowledges.Add(flipKnowledge);
         }
     }
 }
コード例 #2
0
        public static bool AddNewFlipCardKnowledge(FlipCardKnowledge fck)
        {
            bool state = false;

            using (var connection = DBConnection.Instance.Connection)
            {
                MySqlCommand cmd = new MySqlCommand($"{query.add_flip_card_knowledge} {fck.ToInsert()}", connection);
                connection.Open();
                var id = cmd.ExecuteNonQuery();
                state  = true;
                fck.Id = (byte)cmd.LastInsertedId;
                connection.Close();
            }
            return(state);
        }
コード例 #3
0
        public static bool DeleteFlipCardKnowledge(FlipCardKnowledge fck)
        {
            bool state = false;

            using (var connection = DBConnection.Instance.Connection)
            {
                MySqlCommand cmd = new MySqlCommand(query.delete_flipCard_knowledge + $"{fck.Id}", connection);
                connection.Open();
                var n = cmd.ExecuteNonQuery();
                if (n == 1)
                {
                    state = true;
                }

                connection.Close();
            }
            return(state);
        }
コード例 #4
0
        public static bool EditFlipCardKnowledge(FlipCardKnowledge fck, ulong?idFkwl)
        {
            bool state = false;

            using (var connection = DBConnection.Instance.Connection)
            {
                // Aktualizacja krotki (jeśli wymagana) w miejscu poprzednika (zmiana tylko knowledge)
                string       AKTUALIZUJ_POZIOM = $"UPDATE flipcardknowledge SET knowledge={fck.Knowledge} WHERE ID={idFkwl}";
                MySqlCommand cmd = new MySqlCommand(AKTUALIZUJ_POZIOM, connection);
                connection.Open();
                var n = cmd.ExecuteNonQuery();
                if (n == 1)
                {
                    state = true;
                }

                connection.Close();
            }
            return(state);
        }
コード例 #5
0
ファイル: Model.cs プロジェクト: N-janas/Flashcards
 public bool FlipCardKnowledgeExist(FlipCardKnowledge f) => FlipCardKnowledges.Contains(f);