public ActionResult Index(VehicleSalesViewModel VehicleSales) { var file = VehicleSales.File; var model = new VehicleSalesViewModel(); if (file != null) { try { string path = Path.Combine(Server.MapPath("~/Uploads"), Path.GetFileName(file.FileName)); file.SaveAs(path); var vehiclesalesdetails = _VehicleSalesInformation.ReadSalesInformation(path).GroupBy(o => o.Vehicle) .OrderByDescending(g => g.Count()) .ToDictionary(g => g.Key, g => g.ToList()); ModelState.AddModelError("File uploaded successfully", ""); // model.File = new HttpPostedFileBase(); ; model.VehicleSales = vehiclesalesdetails; } catch (Exception ex) { ViewBag.Message = "ERROR:" + ex.Message.ToString(); ModelState.AddModelError("ERROR:", ex.Message.ToString()); } } else { // ViewBag.Message = "You have not specified a file."; ModelState.AddModelError("ERROR:", "You have not specified a file"); } return(View("Index", model)); }
public void Upload_Action_Should_Store_Files_In_The_Upload_Folder() { //Object and variale declration VehicleSalesInformation vehicleSalesInformation = new VehicleSalesInformation(); VehicleSalesViewModel vehicleSalesViewModel = new VehicleSalesViewModel(); string solution_dir = TestContext.TestDir + "\\Uploads"; string filename = "testfile.csv"; var httpContextMock = new Mock <HttpContextBase>(); var serverMock = new Mock <HttpServerUtilityBase>(); serverMock.Setup(x => x.MapPath("~/Uploads")).Returns(solution_dir); httpContextMock.Setup(x => x.Server).Returns(serverMock.Object); var sut = new VehicleSalesController(vehicleSalesInformation); sut.ControllerContext = new ControllerContext(httpContextMock.Object, new RouteData(), sut); var fileMock = new Mock <HttpPostedFileBase>(); fileMock.Setup(x => x.FileName).Returns(filename); vehicleSalesViewModel.File = fileMock.Object; var actual = sut.Index(vehicleSalesViewModel); fileMock.Verify(x => x.SaveAs(solution_dir + "\\" + filename)); }
// GET: VehiclsSales public ActionResult Index() { var model = new VehicleSalesViewModel(); return(View(model)); }