Exemplo n.º 1
0
        public static void LoadReadFeed()
        {
            logger.Info("Получаем таблицу прочитанных пользователем новостей...");

            if (NewsFeeds == null)
            {
                NewsFeeds = new List <NewsFeed> ();
            }

            string    sql = "SELECT * FROM `read_news` WHERE user_id = @user_id";
            DbCommand cmd = QSMain.ConnectionDB.CreateCommand();

            cmd.CommandText = sql;

            DbParameter param = cmd.CreateParameter();

            param.ParameterName = "@user_id";
            param.Value         = QSMain.User.Id;
            cmd.Parameters.Add(param);

            using (DbDataReader rdr = cmd.ExecuteReader())
            {
                while (rdr.Read())
                {
                    NewsFeed feed = NewsFeeds.Find(f => f.Id == DBWorks.GetString(rdr, "feed_id", ""));
                    if (feed != null)
                    {
                        feed.FirstRead  = false;
                        feed.DataBaseId = DBWorks.GetInt(rdr, "id", -1);
                        string[] items = DBWorks.GetString(rdr, "items", "").Split(',');
                        feed.ReadItems = new List <string> (items);
                    }
                    else
                    {
                        logger.Warn("В базе найден feed_id={0}, но в программе он не настроен.", DBWorks.GetString(rdr, "feed_id", ""));
                    }
                }
            }
            logger.Info("Ok");
        }
Exemplo n.º 2
0
        public void Fill(int id)
        {
            Itemid  = id;
            NewItem = false;

            logger.Info("Запрос модели №{0}...", id);
            string sql = "SELECT models.*, marks.name as mark FROM models " +
                         "LEFT JOIN marks ON marks.id = models.mark_id WHERE models.id = @id";

            QSMain.CheckConnectionAlive();
            try
            {
                MySqlCommand cmd = new MySqlCommand(sql, QSMain.connectionDB);

                cmd.Parameters.AddWithValue("@id", id);

                using (MySqlDataReader rdr = cmd.ExecuteReader())
                {
                    rdr.Read();

                    labelId.Text   = rdr["id"].ToString();
                    entryName.Text = rdr["name"].ToString();

                    entryMark.Text = rdr["mark"].ToString();
                    Mark_id        = DBWorks.GetInt(rdr, "mark_id", -1);

                    logger.Info("Ok");
                }
                this.Title = entryName.Text;
            }
            catch (Exception ex)
            {
                QSMain.ErrorMessageWithLog("Ошибка получения информации о модели!", logger, ex);
                this.Respond(Gtk.ResponseType.Reject);
            }
            TestCanSave();
        }