public async Task CancellAsyncTest() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options; var dbContext = new ApplicationDbContext(options); dbContext.Products.Add(new Product { Id = 1 }); dbContext.Orders.Add(new Order { Id = "First order", UserId = "Test", ProductId = 1 }); await dbContext.SaveChangesAsync(); var repository = new EfDeletableEntityRepository <Order>(dbContext); var service = new OrdersService(repository); var deleteOrderModel = new RemoveOrderViewModel { Id = "First order" }; var productId = await service.CancelAsync(deleteOrderModel); Assert.Equal(1, productId); Assert.Equal(0, repository.All().Where(a => a.Id == "First order").Count()); }
public IActionResult Remove([FromRoute] string Id) { RemoveOrderViewModel removeViewModel = new RemoveOrderViewModel() { Id = Id }; return(PartialView("_RemoveOrderPartial", removeViewModel)); }
public async Task <IActionResult> CancellOrderDb(string id) { RemoveOrderViewModel model = new RemoveOrderViewModel { Id = id, }; var productId = await this.ordersService.CancelAsync(model); await this.productsService.IncreaseQuantityByIdAsync(productId); return(this.RedirectToAction("MyOrders")); }
public async Task <int> CancelAsync(RemoveOrderViewModel model) { var orderToCancell = this.repository.All() .Where(a => a.Id == model.Id) .FirstOrDefault(); var product = this.repository.All().Where(a => a.Id == model.Id) .Select(a => a.ProductId) .FirstOrDefault(); this.repository.Delete(orderToCancell); await this.repository.SaveChangesAsync(); return(product); }
public IActionResult Remove() { RemoveOrderViewModel removeOrderViewModel = new RemoveOrderViewModel(context.Orders.ToList()); return(View(removeOrderViewModel)); }
public IActionResult Remove(RemoveOrderViewModel removeData) { orderService.Remove(removeData.Id); return(PartialView("_RemoveOrderPartial", removeData)); }
public IActionResult CancellOrder(RemoveOrderViewModel model) { return(this.View(model)); }