single() публичный Метод

public single ( string query, string bindings = null ) : string
query string
bindings string
Результат string
Пример #1
0
        private void btnSaveChanges_Click(object sender, EventArgs e)
        {
            btnSaveChanges.Focus();
            bool tagsdel = false;

            Utilities.runInThread(() =>
            {
                if (string.IsNullOrEmpty(txtAddQ.Text.Trim()) == true || string.IsNullOrEmpty(txtAddTags.Text.Trim()) == true || (dgvAnswerlist.Rows.Count < 2))
                {
                    Utilities.notifyThem(ntfEdit, "You must fill some info about your question first.", NotificationBox.Type.Error);
                }
                else
                {
                    List <Answer> Answers = new List <Answer>();
                    for (int a = 0; a < dgvAnswerlist.Rows.Count - 1; a++)
                    {
                        bool correct;
                        if (dgvAnswerlist.Rows[a].Cells[1].Value == null)
                        {
                            correct = false;
                        }
                        else
                        {
                            correct = bool.Parse(dgvAnswerlist.Rows[a].Cells[1].Value.ToString());
                        }
                        Answers.Add(new Answer(dgvAnswerlist.Rows[a].Cells[0].Value.ToString().TrimEnd().TrimStart(), correct));
                    }


                    DB TempDB = Utilities.AsyncDB(true);
                    TempDB.bind(new string[] { "Question", txtAddQ.Text.TrimEnd().TrimStart(), "Answers", JsonConvert.SerializeObject(Answers).ToString(), "Dlevel", difficultyLvl.Value.ToString(), "Prive", (switchPrivate.isOn ? 1 : 0).ToString(), "UID", Globals.logUser.id.ToString() });

                    string qid = TempDB.single("UPDATE questions SET question = @Question, answers = @Answers, dlevel = @Dlevel, prive = @Prive, uid = @UID WHERE id=" + _quest.id + ";");

                    int qAddTag   = 0;
                    string[] tags = txtAddTags.Text.TrimEnd(',').Split(',');
                    foreach (string tag in tags)
                    {
                        if (!string.IsNullOrEmpty(tag))
                        {
                            if (tagsdel == true)
                            {
                                TempDB.bind(new string[] { "TAG", tag.ToLower(), "QID", _quest.id.ToString() });
                                qAddTag += TempDB.nQuery("INSERT INTO tags (nametag, qid) VALUES (@TAG, @QID)");
                            }
                            else
                            {
                                TempDB.nQuery("DELETE FROM tags WHERE qid = " + _quest.id);
                                TempDB.bind(new string[] { "TAG", tag.ToLower(), "QID", _quest.id.ToString() });
                                qAddTag += TempDB.nQuery("INSERT INTO tags (nametag, qid) VALUES (@TAG, @QID)");
                                tagsdel  = true;
                            }
                        }
                    }
                    Utilities.notifyThem(ntfEdit, "Successfully Saved.", NotificationBox.Type.Success);
                    Functionality.RefreshMyQuestions();
                    change = false;
                }
            }).Start();
        }
Пример #2
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtAddQ.Text.Trim()) == true || string.IsNullOrEmpty(txtAddTags.Text.Trim()) == true || (dgvAnswerlist.Rows.Count < 1))
            {
                Utilities.notifyThem(ntfAdd, "You must fill some info about your question first", NotificationBox.Type.Error);
            }
            else
            {
                List <Answer> Answers = new List <Answer>();
                for (int i = 0; i < dgvAnswerlist.Rows.Count; i++)
                {
                    Answers.Add(new Answer(dgvAnswerlist.Rows[i].Cells[0].Value.ToString().TrimEnd().TrimStart(), bool.Parse(dgvAnswerlist.Rows[i].Cells[1].Value.ToString())));
                }
                Utilities.runInThread(() =>
                {
                    DB TempDB = Utilities.AsyncDB(true);
                    TempDB.bind(new string[] { "Question", txtAddQ.Text.TrimEnd().TrimStart(), "Answers", JsonConvert.SerializeObject(Answers).ToString(), "Dlevel", difficultyLvl.Value.ToString(), "Prive", (switchPrivate.isOn ? 1 : 0).ToString(), "UID", Globals.logUser.id.ToString() });
                    string qid = TempDB.single("INSERT INTO questions (question, answers, dlevel, prive, uid) VALUES (@Question, @Answers, @Dlevel, @Prive, @UID); select last_insert_id();");

                    int qAddTag   = 0;
                    string[] tags = txtAddTags.Text.TrimEnd(',').Split(',');
                    foreach (string tag in tags)
                    {
                        if (!string.IsNullOrEmpty(tag))
                        {
                            TempDB.bind(new string[] { "TAG", tag.ToLower(), "QID", qid });
                            qAddTag += TempDB.nQuery("INSERT INTO tags (nametag, qid) VALUES (@TAG, @QID)");
                        }
                    }

                    if (string.IsNullOrEmpty(qid) == false && qAddTag > 0)
                    {
                        Utilities.notifyThem(ntfAdd, "Successfull Added Question !", NotificationBox.Type.Success);
                        Functionality.RefreshMyQuestions();
                        Utilities.clearText(txtAddQ, txtAddTags, txtAnswer);
                        Utilities.InvokeMe(dgvAnswerlist, () =>
                        {
                            dgvAnswerlist.Rows.Clear();
                            dgvAnswerlist.Refresh();
                        });
                        Utilities.InvokeMe(difficultyLvl, () =>
                        {
                            difficultyLvl.Value = 1;
                        });
                        Utilities.InvokeMe(switchPrivate, () =>
                        {
                            switchPrivate.isOn = false;
                        });
                        Utilities.InvokeMe(switchCorrectAnswer, () =>
                        {
                            switchCorrectAnswer.isOn = true;
                        });

                        Functionality.LoadTags(autocompleteMenu1);
                    }
                }).Start();
            }
        }
Пример #3
0
        public static bool EmailAvailibility(String str)
        {
            DB tDB = Utilities.AsyncDB();

            tDB.bind(new string[] { "Email", str });

            String Q      = tDB.single("SELECT COUNT(*) FROM users WHERE email = @Email");
            int    result = Int32.Parse(Q);

            if (result >= 1)
            {
                invalid = true;
            }
            else
            {
                invalid = false;
            }

            return(invalid);
        }