public ActionResult SelectionResult(string sortOrder, string manufacturer, string qualityClass) { ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; ViewBag.PriceSortParm = sortOrder == "Price" ? "price_desc" : "Price"; ViewBag.Manufacturer = manufacturer; ViewBag.QualityClass = qualityClass; List <CarModelDTO> modelDTOs = new List <CarModelDTO>(); if (manufacturer != null) { var manufacturerObj = _manufacturerService.GetManufacturers().FirstOrDefault(it => it.Name == manufacturer); modelDTOs = _carModelService.GetCarModels().Where(it => it.ManufacturerId == manufacturerObj.Id).ToList(); } if (qualityClass != null) { var qualityClassObj = _qualityClassService.GetQualityClasses().FirstOrDefault(it => it.Name == qualityClass); modelDTOs = _carModelService.GetCarModels().Where(it => it.QualityClassId == qualityClassObj.Id).ToList(); } var mapper = new MapperConfiguration(cg => cg.CreateMap <CarModelDTO, CarModelView>()).CreateMapper(); var modelView = mapper.Map <List <CarModelDTO>, List <CarModelView> >(modelDTOs); for (int i = 0; i < modelView.Count; i++) { modelView[i].Count = GetCountAuto(modelView[i].Id); } switch (sortOrder) { case "name_desc": modelView = modelView.OrderByDescending(s => s.Name).ToList(); break; case "Price": modelView = modelView.OrderBy(s => s.Price).ToList(); break; case "price_desc": modelView = modelView.OrderByDescending(s => s.Price).ToList(); break; default: modelView = modelView.OrderBy(s => s.Name).ToList(); break; } return(View(modelView)); }
public ActionResult Index() { var mapper = new MapperConfiguration(cg => cg.CreateMap <QualityClassDTO, QualityClassViewModel>()).CreateMapper(); var models = mapper.Map <IEnumerable <QualityClassDTO>, List <QualityClassViewModel> >(_qualityClassService.GetQualityClasses()); return(View(models)); }