public virtual async Task <Cart?> Get(string id, CancellationToken cancellationToken = default) { var dbCart = await _cartResolver.Get(id, cancellationToken); return(dbCart == null ? null : new Cart() { Id = dbCart.Id, Items = dbCart.Items.ToImmutableDictionary(i => i.DbProductId, i => i.Quantity), }); }