示例#1
0
        public ActionResult Destroy(int productID)
        {
            //Find a product with ProductID equal to the id action parameter
            ProductViewModel product = SessionProductRepository.One(p => p.ProductID == productID);

            RouteValueDictionary routeValues;

            if (product == null)
            {
                //A product with the specified id does not exist - redisplay the grid

                //GridRouteValues() is an extension method which returns the
                //route values defining the grid state - current page, sort expression, filter etc.
                routeValues = this.GridRouteValues();

                return(RedirectToAction("ServerEditing", routeValues));
            }

            //Delete the record
            SessionProductRepository.Delete(product);

            routeValues = this.GridRouteValues();

            //Redisplay the grid
            return(RedirectToAction("ServerEditing", routeValues));
        }
示例#2
0
        public ActionResult Delete(int id, GridEditMode mode, GridButtonType type)
        {
            //Find a product with ProductID equal to the id action parameter
            EditableProduct product = SessionProductRepository.One(p => p.ProductID == id);

            RouteValueDictionary routeValues;

            if (product == null)
            {
                //A product with the specified id does not exist - redisplay the grid

                //GridRouteValues() is an extension method which returns the
                //route values defining the grid state - current page, sort expression, filter etc.
                routeValues = this.GridRouteValues();
                // add the editing mode to the route values
                routeValues.Add("mode", mode);
                // add button type to the route values
                routeValues.Add("type", type);

                return(RedirectToAction("EditingServerSide", routeValues));
            }

            //Delete the record
            SessionProductRepository.Delete(product);

            routeValues = this.GridRouteValues();
            // add the editing mode to the route values
            routeValues.Add("mode", mode);
            // add button type to the route values
            routeValues.Add("type", type);

            //Redisplay the grid
            return(RedirectToAction("EditingServerSide", routeValues));
        }
示例#3
0
        public ActionResult Editing_Destroy([DataSourceRequest] DataSourceRequest request, ProductViewModel product)
        {
            if (product != null)
            {
                SessionProductRepository.Delete(product);
            }

            return(Json(ModelState.ToDataSourceResult()));
        }
        public ActionResult Editing_Destroy([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")] IEnumerable <ProductViewModel> products)
        {
            if (products.Any())
            {
                foreach (var product in products)
                {
                    SessionProductRepository.Delete(product);
                }
            }

            return(Json(ModelState.ToDataSourceResult()));
        }
示例#5
0
        public ActionResult _DeleteAjaxEditing(int id)
        {
            //Find a customer with ProductID equal to the id action parameter
            EditableProduct product = SessionProductRepository.One(p => p.ProductID == id);

            if (product != null)
            {
                //Delete the record
                SessionProductRepository.Delete(product);
            }

            //Rebind the grid
            return(View(new GridModel(SessionProductRepository.All())));
        }
        public ActionResult _SaveBatchEditing([Bind(Prefix = "inserted")] IEnumerable <EditableProduct> insertedProducts,
                                              [Bind(Prefix = "updated")] IEnumerable <EditableProduct> updatedProducts,
                                              [Bind(Prefix = "deleted")] IEnumerable <EditableProduct> deletedProducts)
        {
            if (insertedProducts != null)
            {
                foreach (var product in insertedProducts)
                {
                    SessionProductRepository.Insert(product);
                }
            }

            if (updatedProducts != null)
            {
                foreach (var product in updatedProducts)
                {
                    var target = SessionProductRepository.One(p => p.ProductID == product.ProductID);
                    if (target != null)
                    {
                        target.ProductName  = product.ProductName;
                        target.UnitPrice    = product.UnitPrice;
                        target.UnitsInStock = product.UnitsInStock;
                        target.LastSupply   = product.LastSupply;
                        target.Discontinued = product.Discontinued;

                        SessionProductRepository.Update(target);
                    }
                }
            }

            if (deletedProducts != null)
            {
                foreach (var product in deletedProducts)
                {
                    SessionProductRepository.Delete(product);
                }
            }

            return(View(new GridModel(SessionProductRepository.All())));
        }