예제 #1
0
        /// <summary>
        ///
        /// </summary>
        private static void ImportCategories(ApplicationDbContext db)
        {
            var sortIndex = 0;
            var dirInfo   = new DirectoryInfo(HttpContext.Current.Server.MapPath(staticListDirectory));

            foreach (var dir in dirInfo.GetDirectories())
            {
                StaticCategory staticCategory = new StaticCategory()
                {
                    Name      = dir.Name,
                    SortOrder = sortIndex++
                };
                db.StaticCategories.Add(staticCategory);
                db.SaveChanges();

                var soIndex   = 0;
                var fileNames = dir.GetFiles();
                foreach (var fileInfo in fileNames)
                {
                    string filePath = string.Concat(dir.Name, "/", fileInfo.Name);
                    string key      = string.Concat(dir.Name.Replace(" ", "_"), ".", Path.GetFileNameWithoutExtension(fileInfo.Name));

                    StaticCategoryList staticCategoryList = new StaticCategoryList()
                    {
                        Name           = Path.GetFileNameWithoutExtension(fileInfo.Name),
                        StaticCategory = staticCategory,
                        SortOrder      = soIndex++
                    };
                    db.StaticCategoryLists.Add(staticCategoryList);
                    db.SaveChanges();

                    ImportCategoryList(db, staticCategoryList, key, filePath);
                }
            }
        }
        public ActionResult DeleteConfirmed(int id)
        {
            StaticCategoryList staticCategoryList = db.StaticCategoryLists.Find(id);

            db.StaticCategoryLists.Remove(staticCategoryList);
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
예제 #3
0
        // GET: Admin/StaticCategoryListItem
        public ActionResult Index(int?id)
        {
            int categoryListId = (id.HasValue) ? Convert.ToInt32(id) : 0;
            int categoryId     = (categoryListId > 0) ? db.StaticCategoryLists.Find(categoryListId).StaticCategory.Id : 0;

            ViewBag.StaticCategory     = StaticCategory.DropDown(categoryId);
            ViewBag.StaticCategoryList = StaticCategoryList.DropDown(categoryId, categoryListId);

            return(View());
        }
        public ActionResult Edit([Bind(Include = "Id,Name,StaticCategoryId,Description,SortOrder,IsPublished")] StaticCategoryList staticCategoryList)
        {
            if (ModelState.IsValid)
            {
                db.Entry(staticCategoryList).State = EntityState.Modified;
                db.SaveChanges();

                return(RedirectToAction("Index", new { id = staticCategoryList.StaticCategory.Id }));
            }
            return(View(staticCategoryList));
        }
        // GET: Admin/StaticCategoryList/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            StaticCategoryList staticCategoryList = db.StaticCategoryLists.Find(id);

            if (staticCategoryList == null)
            {
                return(HttpNotFound());
            }
            return(View(staticCategoryList));
        }
예제 #6
0
        /// <summary>
        ///
        /// </summary>
        private static void ImportCategoryList(ApplicationDbContext db, StaticCategoryList staticCategoryList, string key, string fileName)
        {
            XmlDocument xmldoc = new XmlDocument();

            xmldoc.Load(System.IO.Path.Combine(HttpContext.Current.Server.MapPath(staticListDirectory), fileName));
            XmlNodeList nodes = xmldoc.GetElementsByTagName("defaults");

            var sortIndex = 0;

            foreach (XmlNode node in nodes)
            {
                StaticCategoryListItem staticListItem = new StaticCategoryListItem();
                staticListItem.StaticCategoryList = staticCategoryList;
                staticListItem.Name        = node["Text"].InnerText;
                staticListItem.Description = node["Description"].InnerText;
                staticListItem.SortOrder   = sortIndex++;

                //Add the object to the DB
                db.StaticCategoryListItems.Add(staticListItem);
                db.SaveChanges();
            }
        }
예제 #7
0
 public JsonResult GetCategoryList(int categoryId)
 {
     return(Json(StaticCategoryList.DropDown(categoryId)));
 }