/// <summary> /// Gets the current shopping cart. /// </summary> /// <param name="services"></param> /// <returns>Returns the shopping cart.</returns> public static ShoppingCartBs GetCart(IServiceProvider services) { ISession session = null; AppDbContext context = null; if (services != null) { context = (AppDbContext)services.GetService(typeof(AppDbContext)); var httpContextAccessor = ((IHttpContextAccessor)services.GetRequiredService(typeof(IHttpContextAccessor))); if (httpContextAccessor != null) { session = httpContextAccessor.HttpContext.Session; } } Guid cartId = session?.GetString("ShoppingCartId") != null ? new Guid(session.GetString("ShoppingCartId")) : Guid.NewGuid(); session.SetString("ShoppingCartId", cartId.ToString()); var lstShoppingCartItemDto = new ShoppingCartItemBs(context). FindBy(c => c.ShoppingCart.Id == cartId && c.Status == true); return(new ShoppingCartBs(context) { ShoppingCartId = cartId, ShoppingCartItems = lstShoppingCartItemDto }); }
public ShoppingCartBs(AppDbContext appDbContext) : base(appDbContext) { _shoppingCartItemBs = new ShoppingCartItemBs(AppDbContext); }