コード例 #1
0
        public static ParamsFunc <Args, Result> y1(
            Func <ParamsFunc <Args, Result>, ParamsFunc <Args, Result> > f)
        {
            var r = new RecursiveFunction(w => f(args => w.o(w)(args)));

            return(r.o(r));
        }
コード例 #2
0
        static void Main(string[] args)
        {
            using (var UnitOfWork_Object = new UnitOfWork(new DatabaseContext()))
            {
                Console.WriteLine("Eksempel 1");
                Product Product_Object = UnitOfWork_Object.Products.Get(1);
                Console.WriteLine("Product navn : " + Product_Object.ProductName);
                Console.WriteLine("Kategory Navn : " + Product_Object.Category.CategoryName);

                Console.WriteLine("");
                Console.WriteLine("Eksempel 2");
                Category Category_Object = UnitOfWork_Object.Categories.Get(6);
                Console.WriteLine("Kategori Navn : " + Category_Object.CategoryName);
                while (null != Category_Object.ParentCategoryID)
                {
                    Category_Object = Category_Object.ParentCategory;
                    Console.WriteLine("Kategori Navn : " + Category_Object.CategoryName);
                }

                Console.WriteLine("");
                Console.WriteLine("Eksempel 3");
                Category        Category_ObjectTop = UnitOfWork_Object.Categories.Get(1);
                List <Category> CategoryList       = RecursiveFunction.GetAllCategoriesUnderMainCategory(Category_ObjectTop);
                foreach (Category CategoryObject in CategoryList)
                {
                    Console.WriteLine("Kategori Navn : " + CategoryObject.CategoryName);
                }

                Console.WriteLine("");
                Console.WriteLine("Eksempel 4");
                Product_Object.ProductName = "Modificeret";
                UnitOfWork_Object.Complete();

                Console.WriteLine("");
                Console.WriteLine("Eksempel 5");
                Product Product_Object1 = new Product();
                Product_Object1.ProductName = "Test det her";
                Product_Object1.CategoryID  = 1;
                UnitOfWork_Object.Products.Add(Product_Object1);
                UnitOfWork_Object.Complete();

                Console.WriteLine("");
                Console.WriteLine("Eksempel 6");
                int StartValue = 6;
                do
                {
                    Product_Object1 = UnitOfWork_Object.Products.Get(StartValue);
                    StartValue++;
                } while (null == Product_Object1);

                UnitOfWork_Object.Products.Remove(Product_Object1);
                UnitOfWork_Object.Complete();
                Console.WriteLine("Slettet Produkt med ProductID " + StartValue);

                Console.ReadLine();
            }
        }
コード例 #3
0
        public ActionResult ProductsInMainCategory(int id)
        {
            List <Product> ProductList = db.Products.Where(m => m.CategoryID == id).OrderBy(m => m.CategoryID).ToList();

            ViewBag.SubCategoryList = db.Categories.Where(c => c.ParentCategoryID == id).ToList();
            ViewBag.Category        = db.Categories.Find(id);

            List <VM_CategoryLevel> VM_CategoryLevel_List = RecursiveFunction.GetAllCategoriesUnderMainCategoryWithLevel(db.Categories.Find(id));

            ViewBag.SubCategoryLevelList = VM_CategoryLevel_List;

            return(View(ProductList));
        }
コード例 #4
0
        public JsonResult GetSubCategoriesUnderMainCategory(int ParentCategoryID)
        {
            List <VM_CategoryLevel> VM_CategoryLevel_List = RecursiveFunction.GetAllCategoriesUnderMainCategoryWithLevel(db.Categories.Find(ParentCategoryID));

            List <object> JsonList = new List <object>();

            foreach (VM_CategoryLevel item in VM_CategoryLevel_List)
            {
                var VM_CategoryLevelItem = new
                {
                    CategoryName  = item.Category.CategoryName,
                    CategoryID    = item.Category.CategoryID,
                    CategoryLevel = item.CategoryLevel
                };
                JsonList.Add(VM_CategoryLevelItem);
            }

            return(Json(JsonList, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
 public Function <A, B> apply(RecursiveFunction <Function <A, B> > w)
 {
     return(f.apply(new __2(w)));
 }
コード例 #6
0
 public __2(RecursiveFunction <Function <A, B> > w)
 {
     this.w = w;
 }
コード例 #7
0
 static M M(RecursiveFunction f)
 {
     return new M(f);
 }