public ActionResult Tegs(int?id_teg)
        {
            if (id_teg == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            DataBaseTegs          dataBaseTeg           = new DataBaseTegs();
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();
            DataBaseArticles      dataBaseArticle       = new DataBaseArticles();
            DataBaseCategories    dataBaseCategory      = new DataBaseCategories();

            var id_articles = dataBaseArticles_Tegs.SelectArticles(id_teg);

            List <OneArticle> fullArticles = new List <OneArticle>();

            foreach (var id_article in id_articles)
            {
                OneArticle oneArticle = new OneArticle();

                var id_tegs = dataBaseArticles_Tegs.SelectTegs(id_article.Articles_Id);

                foreach (var teg in id_tegs)
                {
                    var tegs = dataBaseTeg.Select(teg.Tegs_Id);
                    oneArticle.Tegs.Add(tegs);
                }

                oneArticle.Article  = dataBaseArticle.Select(id_article.Articles_Id);
                oneArticle.Category = dataBaseCategory.Select(oneArticle.Article.Category_Id);
                fullArticles.Add(oneArticle);
            }

            return(View(fullArticles));
        }
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            DataBaseArticles      dataBaseArticle       = new DataBaseArticles();
            DataBaseCategories    dataBaseCategory      = new DataBaseCategories();
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();
            DataBaseTegs          dataBaseTeg           = new DataBaseTegs();

            OneArticle oneArticle = new OneArticle();

            oneArticle.Article    = dataBaseArticle.Select(id);
            oneArticle.Categories = new SelectList(dataBaseCategory.Select(), "Category_Id", "Name");
            oneArticle.Category   = dataBaseCategory.Select(oneArticle.Article.Category_Id);

            var id_tegs = dataBaseArticles_Tegs.SelectTegs(oneArticle.Article.Article_Id);

            foreach (var id_teg in id_tegs)
            {
                var teg = dataBaseTeg.Select(id_teg.Tegs_Id);
                oneArticle.Teg += teg.Name;
            }

            return(View(oneArticle));
        }
示例#3
0
        private List <OneArticle> GetArticles(List <Article> articles)
        {
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();
            DataBaseTegs          dataBaseTegs          = new DataBaseTegs();
            DataBaseCategories    dataBaseCategories    = new DataBaseCategories();

            List <OneArticle> oneArticles = new List <OneArticle>();

            foreach (var a in articles)
            {
                OneArticle oneArticle = new OneArticle();
                oneArticle.Article  = a;
                oneArticle.Category = dataBaseCategories.Select(a.Category_Id);

                var id_teg = dataBaseArticles_Tegs.SelectTegs(a.Article_Id);

                foreach (var teg in id_teg)
                {
                    oneArticle.Tegs.Add(dataBaseTegs.Select(teg.Tegs_Id));
                }

                oneArticles.Add(oneArticle);
            }

            return(oneArticles);
        }
示例#4
0
        public ActionResult Create(NewArticle newArticle)
        {
            DataBaseTegs          dataBaseTeg           = new DataBaseTegs();
            DataBaseArticles      dataBaseArticles      = new DataBaseArticles();
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();

            newArticle.Article.Category_Id = newArticle.CategoryId;
            newArticle.Article.DateTime    = DateTime.Now;
            int id_article = dataBaseArticles.Insert(newArticle.Article);

            string[] tegs = newArticle.Tegs.Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries);

            foreach (string teg in tegs)
            {
                int id_teg = dataBaseTeg.Insert("#" + teg);
                dataBaseArticles_Tegs.Insert(id_article, id_teg);
            }

            DataBaseCategories dataBaseCategory = new DataBaseCategories();
            NewArticle         newArticle1      = new NewArticle
            {
                Categories = new SelectList(dataBaseCategory.Select(), "Category_Id", "Name")
            };

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult Delete(int?id)
        {
            if (id != null)
            {
                DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();
                DataBaseArticles      dataBaseArticle       = new DataBaseArticles();

                dataBaseArticles_Tegs.DeleteArticle(id);
                dataBaseArticle.Delete(id);

                ModelState.AddModelError("", "Статья успешно удалена");
            }
            return(RedirectToAction("Index", "Home"));
        }
示例#6
0
        private List <OneArticle> GetArticles(List <Article> articles, string tegsModel)
        {
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();
            DataBaseTegs          dataBaseTegs          = new DataBaseTegs();
            DataBaseCategories    dataBaseCategories    = new DataBaseCategories();

            string[] tegs = tegsModel.Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries);

            List <OneArticle> oneArticles = new List <OneArticle>();

            foreach (var a in articles)
            {
                bool       check      = false;
                OneArticle oneArticle = new OneArticle();
                var        id_teg     = dataBaseArticles_Tegs.SelectTegs(a.Article_Id);

                List <Teg> listTegs = new List <Teg>();

                foreach (var teg in id_teg)
                {
                    var getTegs = dataBaseTegs.Select(teg.Tegs_Id);
                    listTegs.Add(getTegs);

                    if (tegs.Contains(getTegs.Name.Substring(1)))
                    {
                        check = true;
                    }
                }

                if (check)
                {
                    oneArticle.Article  = a;
                    oneArticle.Category = dataBaseCategories.Select(a.Category_Id);
                    oneArticle.Tegs     = listTegs;
                }

                oneArticles.Add(oneArticle);
            }

            try
            {
                oneArticles.Reverse();
            }
            catch (Exception)
            {}

            return(oneArticles);
        }
示例#7
0
        public static void CreateTables()
        {
            DataBaseUsers user = new DataBaseUsers();

            user.CreateTables();

            DataBaseCategories category = new DataBaseCategories();

            category.CreateTable();

            DataBaseTegs teg = new DataBaseTegs();

            teg.CreateTable();

            DataBaseArticles article = new DataBaseArticles();

            article.CreateTable();

            DataBaseArticles_Tegs articles_Tegs = new DataBaseArticles_Tegs();

            articles_Tegs.CreateTable();
        }
        public ActionResult Edit(OneArticle oneArticle)
        {
            oneArticle.Article.DateTime = DateTime.Now;

            DataBaseArticles dataBaseArticles = new DataBaseArticles();

            dataBaseArticles.Update(oneArticle.Article);

            DataBaseTegs          dataBaseTeg           = new DataBaseTegs();
            DataBaseArticles_Tegs dataBaseArticles_Tegs = new DataBaseArticles_Tegs();

            string[] tegs = oneArticle.Teg.Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries);
            dataBaseArticles_Tegs.DeleteArticle(oneArticle.Article.Article_Id);

            foreach (string teg in tegs)
            {
                int id_teg = dataBaseTeg.Insert("#" + teg);
                dataBaseArticles_Tegs.Insert(oneArticle.Article.Article_Id, id_teg);
            }

            ModelState.AddModelError("", "Статья успешно изменена");

            return(Edit(oneArticle.Article.Article_Id));
        }