public async Task <IActionResult> Purchase(int productId) { try { var product = rep.GetProductById(productId); var user = await UserManager.GetUserAsync(HttpContext.User); var Order = new Order() { OrderDate = DateTime.Now, OrderNumber = Guid.NewGuid().ToString(), User = user, Items = new List <OrderItem>() { new OrderItem() { Product = product, Quantity = 1, UnitPrice = product.Price } } }; rep.SaveEntity(Order); rep.SaveAll(); return(View()); } catch (Exception ex) { this.Logger.LogError(ex.Message); return(null); } }