private void Set(WinningBid newBid) { if (!FirstOffer() && CurrentWinningBid.WasMadeBy(newBid.Bidder)) { DomainEvents.Raise(new OutBid(Id, CurrentWinningBid.Bidder)); } CurrentWinningBid = newBid; }
private Auction(AuctionSnapshot snapshot) { this.Id = snapshot.Id; this.StartingPrice = new Money(snapshot.StartingPrice); this.EndsAt = snapshot.EndsAt; this.Version = snapshot.Version; if (snapshot.WinningBid != null) { CurrentWinningBid = WinningBid.CreateFrom(snapshot.WinningBid); } }