示例#1
0
        public ActionResult Edit(int id, FormCollection collection)
        {
            try
            {
                model = new Categorias(Session);
                Categoria Categoria = new Categoria();
                Categoria.CategoriaId = Convert.ToInt32(collection["CategoriaId"]);
                Categoria.Nome = collection["Nome"];

                string[] Subcategorias = collection.GetValues("Subcategoria");
                string[] SubcategoriaId = collection.GetValues("SubcategoriaId");

                List<Categoria> ListSubcategoria = new List<Categoria>();

                short i = -1;
                foreach (string nome in Subcategorias)
                {
                    i++;

                    Categoria Subcategoria = new Categoria();
                    Subcategoria.CategoriaId = String.IsNullOrWhiteSpace(SubcategoriaId[i]) ? 0 : Convert.ToInt32(SubcategoriaId[i]);
                    Subcategoria.Nome = nome;
                    Subcategoria.SuperCategoriaId = Categoria.CategoriaId;

                    if (Subcategoria.CategoriaId > 0 || !String.IsNullOrWhiteSpace(Subcategoria.Nome))
                    {
                        ListSubcategoria.Add(Subcategoria);
                    }
                }
                Categoria.SubCategorias = ListSubcategoria.ToArray();

                model.Edit(Categoria);
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }