public ActionResult ReceiptDetails(string fileName) { if (fileName == null) { return(NotFound()); } var webRootPath = _hostingEnvironment.WebRootPath; var path = webRootPath + $"/Receipts/"; IFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream(path + $"{fileName}", FileMode.Open, FileAccess.Read); Kvitto kvitto = (Kvitto)formatter.Deserialize(stream); stream.Close(); if (kvitto == null) { return(NotFound()); } //return NotFound(); return(View(kvitto)); }
public ActionResult Receipt(int?id) { if (id == null) { return(NotFound()); } var exitvehicle = _context.ParkedVehicle.FirstOrDefault(v => v.Id == id); if (exitvehicle == null) { return(NotFound()); } exitvehicle.Parked = false; //temporary, uncomment later var kvitto = new Kvitto(); kvitto.RegNr = exitvehicle.RegNr; kvitto.StartTime = exitvehicle.StartTime; kvitto.EndTime = DateTime.Now; var between = kvitto.EndTime.Subtract(kvitto.StartTime); kvitto.Duration = string.Format("{0} dagar,{1} timmar,{2} minuter", between.Days, between.Hours, between.Minutes); kvitto.TotalPrice = Math.Floor(between.TotalMinutes * 0.7); _context.SaveChangesAsync(); string ReceiptsData = kvitto.EndTime.Year.ToString() + "_" + (kvitto.EndTime.Month < 10 ? "0" : "") + kvitto.EndTime.Month.ToString() + "_" + kvitto.EndTime.Day.ToString() + "_" + kvitto.EndTime.Hour.ToString() + "_" + kvitto.EndTime.Minute.ToString() + "_" + kvitto.RegNr.ToString(); var webRootPath = _hostingEnvironment.WebRootPath; var contentRootPath = _hostingEnvironment.ContentRootPath; // Not used (HK/MK) string receiptsfolder = "\\Receipts"; if (!Directory.Exists(webRootPath + receiptsfolder)) { Directory.CreateDirectory(webRootPath + receiptsfolder); } var path = webRootPath + $"/Receipts/" + $"/{ReceiptsData}.dat"; IFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream(path, FileMode.Create, FileAccess.Write); formatter.Serialize(stream, kvitto); stream.Close(); //Not working, why? //JsonSerializer serializer = new JsonSerializer(); //serializer.Converters.Add(new JavaScriptDateTimeConverter()); //serializer.NullValueHandling = NullValueHandling.Ignore; //Stream stream = new FileStream(path, FileMode.Create, FileAccess.Write); //using (StreamWriter sw = new StreamWriter(path)) //using (JsonWriter writer = new JsonTextWriter(sw)) //{ // serializer.Serialize(writer, kvitto); //} return(View(kvitto)); }