示例#1
0
        public ActionResult DeleteConfirmed(ProductViewModel productViewModel)
        {
            productViewModel.operationType = OperationType.Delete;
            if (ModelState.IsValid)
            {
                if (productViewModel == null)
                {
                    return(HttpNotFound("Product not found to delete!"));
                }

                string _productName = productViewModel.productModel.Name;

                _productModelFactory.deleteProduct(productViewModel);

                ///---if error deleting product
                if (productViewModel.operationStatus == OperationStatus.Error)
                {
                    //return HttpNotFound(productViewModel.OperationMessage);
                    var productTypeModelList = _productModelFactory.GetProductTypes();
                    if (productTypeModelList != null)
                    {
                        productViewModel.productTypeModel = productTypeModelList;
                    }
                    TempData["errorMessage"] = string.Format("Error deleting product \"{0}\"!, {1}", productViewModel.productModel.Name, productViewModel.OperationMessage);
                    return(View("ProductForm", productViewModel));
                }
                TempData["message"] = string.Format("Product \"{0}\" has been deleted!", _productName);
                return(RedirectToAction("List"));
            }
            else
            {
                var productTypeModelList = _productModelFactory.GetProductTypes();
                if (productTypeModelList != null)
                {
                    productViewModel.productTypeModel = productTypeModelList;
                }
                return(View("ProductForm", productViewModel));
            }
        }