コード例 #1
0
        public ActionResult Add(VehicleAddViewModel model)
        {
            if (ModelState.IsValid)
            {
                var repo = VehicleRepositoryFactory.GetRepository();

                try
                {
                    if (model.ImageUpload != null && model.ImageUpload.ContentLength > 0)
                    {
                        var savepath = Server.MapPath("~/Images");

                        string fileName  = Path.GetFileNameWithoutExtension(model.ImageUpload.FileName);
                        string extension = Path.GetExtension(model.ImageUpload.FileName);

                        var filePath = Path.Combine(savepath, fileName + extension);

                        int counter = 1;
                        while (System.IO.File.Exists(filePath))
                        {
                            filePath = Path.Combine(savepath, fileName + counter.ToString() + extension);
                            counter++;
                        }

                        model.ImageUpload.SaveAs(filePath);
                        model.Vehicle.Picture = Path.GetFileName(filePath);
                    }
                    repo.Insert(model.Vehicle);

                    return(RedirectToAction("Details", new { id = model.Vehicle.VehicleID }));
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            else
            {
                var makesRepo            = MakeRepositoryFactory.GetRepository();
                var modelRepo            = ModelRepositoryFactory.GetRepository();
                var conditionRepo        = ConditionRepositoryFactory.GetRepository();
                var vehicleTypeRepo      = VehicleTypeRepositoryFactory.GetRepository();
                var transmissionTypeRepo = TransmissionTypeRepositoryFactory.GetRepository();
                var colorRepo            = ColorRepositoryFactory.GetRepository();

                model.Makes             = new SelectList(makesRepo.GetAll(), "MakeID", "MakeName");
                model.Models            = new SelectList(modelRepo.GetAll(), "ModelID", "ModelName");
                model.ConditionName     = new SelectList(conditionRepo.GetAll(), "ConditionID", "ConditionName");
                model.VehicleType       = new SelectList(vehicleTypeRepo.GetAll(), "VehicleTypeID", "VehicleTypeName");
                model.TransmissionType  = new SelectList(transmissionTypeRepo.GetAll(), "TransmissionTypeID", "TransmissionTypeName");
                model.CarColorName      = new SelectList(colorRepo.GetAll(), "ColorID", "ColorName");
                model.InteriorColorName = new SelectList(colorRepo.GetAll(), "ColorID", "ColorName");

                return(View(model));
            }
        }
コード例 #2
0
        public ActionResult AddVehicle()
        {
            var model = new VehicleAddViewModel();

            var makesRepo            = MakeRepositoryFactory.GetRepository();
            var modelRepo            = ModelRepositoryFactory.GetRepository();
            var conditionRepo        = ConditionRepositoryFactory.GetRepository();
            var vehicleTypeRepo      = VehicleTypeRepositoryFactory.GetRepository();
            var transmissionTypeRepo = TransmissionTypeRepositoryFactory.GetRepository();
            var colorRepo            = ColorRepositoryFactory.GetRepository();

            model.Makes             = new SelectList(makesRepo.GetAll(), "MakeID", "MakeName");
            model.Models            = new SelectList(modelRepo.GetAll(), "ModelID", "ModelName");
            model.ConditionName     = new SelectList(conditionRepo.GetAll(), "ConditionID", "ConditionName");
            model.VehicleType       = new SelectList(vehicleTypeRepo.GetAll(), "VehicleTypeID", "VehicleTypeName");
            model.TransmissionType  = new SelectList(transmissionTypeRepo.GetAll(), "TransmissionTypeID", "TransmissionTypeName");
            model.CarColorName      = new SelectList(colorRepo.GetAll(), "ColorID", "ColorName");
            model.InteriorColorName = new SelectList(colorRepo.GetAll(), "ColorID", "ColorName");
            model.Vehicle           = new Vehicle();

            return(View(model));
        }