Example #1
0
        public static IEnumerable <ViewProduct> GetProducts()
        {
            using (var db = new MvvmSampleModelContainer())
            {
                var results =
                    from p in  (from p in db.Products select p).ToList()
                    select Data.ViewModels.ViewProduct.FromProduct(p);

                return(results.ToList());
            }
        } // end function
Example #2
0
        // GET: Products
        public ActionResult Index()
        {
            ViewBag.Title = "Products";

            using (var db = new MvvmSampleModelContainer())
            {
                var results =
                    from p in (from p in db.Products select p).ToList()
                    select Data.ViewModels.ViewProduct.FromProduct(p);

                return(View(results));
            }
        } // end function
Example #3
0
        public ActionResult NewItem(ViewProduct product)
        {
            ViewBag.Title = "New Product Item";

            using (var db = new MvvmSampleModelContainer())
            {
                var target = new Product();
                db.AddToProducts(target);
                target.SetProperties(product);

                db.SaveChanges();
            } // end using(db)

            // このサンプルでは、製品の登録が完了すると、Productsページにリダイレクトします。
            //「登録しました」ページを表示する場合は、そのことを表示するビューの表示を用意してViewを返すように変更します。
            return new RedirectResult("~/Products");
        } // end function
Example #4
0
        } // end function

        public static void SaveProduct(ViewProduct product)
        {
            using (var db = new MvvmSampleModelContainer())
            {
                Product target = null;
                if (product.Id > 0)
                {
                    target = (from p in db.Products where p.Id == product.Id select p).FirstOrDefault();
                }// end if

                if (target == null)
                {
                    target = new Product();
                    db.AddToProducts(target);
                } // end if

                target.SetProperties(product);

                db.SaveChanges();
            } // end using(db)
        }     // end function
Example #5
0
        } // end function

        // GET: Item/10
        public ActionResult Item(int id)
        {
            ViewBag.Title = "Product Item";

            using (var db = new MvvmSampleModelContainer())
            {
                var results =
                    from p in (from p in db.Products where p.Id == id select p).ToList()
                    select Data.ViewModels.ViewProduct.FromProduct(p);

                var item = results.FirstOrDefault();

                if (item == null)
                {
                    // このサンプルでは、指定された Id の Product が見つからないときに、Productsページにリダイレクトします。
                    //「見つかりません」ページを表示する場合は、専用のページにリダイレクトするように変更します。
                    return(new RedirectResult("~/Products"));
                } // end if

                return(View(item));
            }
        } // end function