public async Task <Order> GetBy(OrderId id)
            {
                if (_orders.ContainsKey(id))
                {
                    throw new DesignError(SameAggregateRestoredMoreThanOnce);
                }
                var orderDoc = await _session.LoadAsync <OrderDoc>(id.Value);

                if (orderDoc is null)
                {
                    throw new DomainException();
                }
                var order = RestoreFrom(orderDoc);

                _orders.Add(id, orderDoc);
                return(order);
            }
Exemplo n.º 2
0
            public async Task <Order> GetBy(OrderId id)
            {
                if (_orderVersions.ContainsKey(id))
                {
                    throw new DesignError(SameAggregateRestoredMoreThanOnce);
                }
                var snapshot = await _session.LoadAsync <Order.Snapshot>(id.Value);

                if (snapshot is null)
                {
                    throw new DomainException();
                }
                var order    = Order.RestoreFrom(snapshot);
                var metadata = await _session.Tenant.MetadataForAsync(snapshot);

                _orderVersions.Add(id, metadata.CurrentVersion);
                return(order);
            }
            public async Task <Order> GetBy(OrderId id)
            {
                if (_orders.ContainsKey(id))
                {
                    throw new DesignError(SameAggregateRestoredMoreThanOnce);
                }
                var dbOrder = await _dbContext.Orders
                              .Include(o => o.Items)
                              .SingleOrDefaultAsync(o => o.Id == id.Value);

                if (dbOrder is null)
                {
                    throw new DomainException();
                }
                var order = RestoreFrom(dbOrder);

                _orders.Add(id, dbOrder);
                return(order);
            }
Exemplo n.º 4
0
        // and many more

        public OrderHeader(OrderId orderId, ClientId clientId)
        {
            OrderId  = orderId;
            ClientId = clientId;
        }
Exemplo n.º 5
0
 public static Order New(OrderId id) => new Order(id,
Exemplo n.º 6
0
 public static Order New() => New(OrderId.New());
Exemplo n.º 7
0
 private Order(OrderId id) => Id = id;
Exemplo n.º 8
0
 public static Order New() => new Order(OrderId.New());
Exemplo n.º 9
0
 public Task <(ClientId ClientId, TaxId TaxId)> GetBy(OrderId orderId) =>
 throw new System.NotImplementedException();
Exemplo n.º 10
0
 public Task <Order> GetBy(OrderId id) => throw new NotImplementedException();