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); }
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); }
// and many more public OrderHeader(OrderId orderId, ClientId clientId) { OrderId = orderId; ClientId = clientId; }
public static Order New(OrderId id) => new Order(id,
public static Order New() => New(OrderId.New());
private Order(OrderId id) => Id = id;
public static Order New() => new Order(OrderId.New());
public Task <(ClientId ClientId, TaxId TaxId)> GetBy(OrderId orderId) => throw new System.NotImplementedException();
public Task <Order> GetBy(OrderId id) => throw new NotImplementedException();