コード例 #1
0
 public static OperationStatus CreateFromExeption(string message, Exception ex)
 {
     OperationStatus status = new OperationStatus(){Status = false, Message = message};
     if (ex != null)
     {
         status.ExeptionMessage = ex.Message;
         status.ExeptionStackTrace = ex.StackTrace;
     }
     return status;
 }
コード例 #2
0
        public ActionResult Create([Bind(Include = "Id,Name")] CarBrand brand)
        {
            if (ModelState.IsValid)
            {
                var opStatus = new OperationStatus { Status = true, Message = "Brand added" };

                try
                {
                    _brandRepository.Add(brand);
                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error adding brand car.", exp);
                }

                TempData["OperationStatus"] = opStatus;
                return RedirectToAction("Index");
            }
            return View(brand);
        }
コード例 #3
0
ファイル: CarsController.cs プロジェクト: kostia24/CarCatalog
        public ActionResult Create([Bind(Include = "Id,Color,Price,EngineCapacity,Description,ModelId")] Car car, HttpPostedFileBase image)
        {
            string userId = User.Identity.GetUserId();

            if (userId == null)
                return HttpNotFound();

            var model = _modelCarRepository.GetModelById(car.ModelId);
            if (model == null)
            {
                ModelState.AddModelError("ModelId", "No existing model");
            }

            if (ModelState.IsValid)
            {
                car.UserId = userId;
                if (image != null)
                {
                    car.ImageMimeType = image.ContentType;
                    car.ImageData = new byte[image.ContentLength];
                    image.InputStream.Read(car.ImageData, 0, image.ContentLength);
                }
                var opStatus = new OperationStatus { Status = true, Message = "Car added" };

                try
                {
                    _carRepository.Add(car);
                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error adding car.", exp);
                }

                TempData["OperationStatus"] = opStatus;
                return RedirectToAction("Index");
            }

            ViewBag.BrandTree = _brandsTreeRepository.GetBrandsModelsTree();
            return View(car);
        }
コード例 #4
0
        public ActionResult Create([Bind(Include = "Id,Name,BrandId")] CarModel model)
        {
            if (ModelState.IsValid)
            {
                var opStatus = new OperationStatus { Status = true, Message = "Brand added" };

                try
                {
                    _modelRepository.Add(model);
                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error adding model car.", exp);
                }

                TempData["OperationStatus"] = opStatus;

                return RedirectToAction("Index", new {Id = model.BrandId});
            }

            ViewBag.Brand = model.Brand;
            return View(model);
        }
コード例 #5
0
ファイル: CarsController.cs プロジェクト: kostia24/CarCatalog
        public ActionResult DeleteConfirmed(int id)
        {
            Car car = _carRepository.GetCarById(id);
            var opStatus = new OperationStatus { Status = true, Message = "Car deleted" };

            try
            {
               _carRepository.Delete(car);
            }
            catch (Exception exp)
            {
                opStatus = OperationStatus.CreateFromExeption("Error deleting car.", exp);
            }

            TempData["OperationStatus"] = opStatus;
            return RedirectToAction("Index", new { Id = car.ModelId });
        }
コード例 #6
0
        public ActionResult Edit([Bind(Include = "Id,Name,BrandId")] CarModel model)
        {
            if (ModelState.IsValid)
            {
                var opStatus = new OperationStatus { Status = true, Message = "model updated" };

                try
                {
                    _modelRepository.Update(model);
                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error updating model car.", exp);
                }

                TempData["OperationStatus"] = opStatus;
                return RedirectToAction("Index", new {Id = model.BrandId});
            }
            ViewBag.BrandId = new SelectList(_brandRepository.GetAll(), "Id", "Name", model.BrandId);
            return View(model);
        }
コード例 #7
0
        public ActionResult DeleteConfirmed(int id)
        {
            CarModel model = _modelRepository.GetModelById(id);
            if (model == null)
            {
                return HttpNotFound();
            }
            var opStatus = new OperationStatus { Status = true, Message = "model deleted" };

            if (!model.Cars.Any())
            {
                try
                {
                    _modelRepository.Delete(model);
                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error deleting model car.", exp);
                }

                TempData["OperationStatus"] = opStatus;
            }
            else
                TempData["OperationStatus"] = new OperationStatus() { Status = true, Message = "You must delete all cars for this model first" };

            return RedirectToAction("Index", new {Id = model.BrandId});
        }
コード例 #8
0
        public ActionResult DeleteConfirmed(int id)
        {
            CarBrand brand = _brandRepository.GetBrandById(id);
            if (brand == null)
            {
                return HttpNotFound();
            }

            if (!brand.Models.Any())
            {
                var opStatus = new OperationStatus { Status = true, Message = "Brand deleted" };
                try
                {
                    _brandRepository.Delete(brand);

                }
                catch (Exception exp)
                {
                    opStatus = OperationStatus.CreateFromExeption("Error deleting brand car.", exp);
                }

                TempData["OperationStatus"] = opStatus;
            }
            else
                TempData["OperationStatus"] = new OperationStatus()
                {
                    Status = true,
                    Message = "You must delete all models for this brand first"
                };

            return RedirectToAction("Index");
        }