private void Handle(Command command, AnschriftAendern aktion) { var repo = new KundeRepository(aktion.KundenId, _eventStore); var kunde = repo.Retrieve(); kunde.AnschriftAendern(aktion.NeueAnschrift); repo.Commit(); }
private void Handle(Command command, KundeErfassen aktion) { var repo = new KundeRepository(aktion.KundenId, _eventStore); var kunde = repo.Retrieve(); kunde.Erfassen(aktion.Name, aktion.Anschrift); repo.Commit(); }
private void Handle(CommandEnvelope commandEnvelope, AuftragErfassen aktion, UnitOfWork unitOfWork) { var auftrag = new AuftragRepository(unitOfWork).Retrieve(aktion.AuftragsId); var kunde = new KundeRepository(unitOfWork).Retrieve(aktion.Kunde); auftrag.Erfassen(aktion.AuftragsId, aktion.Produkt, aktion.Menge, kunde); }
private void Handle(Command command, AuftragErfassen aktion) { var repo = new AuftragRepository(aktion.AuftragsId, _eventStore); var auftrag = repo.Retrieve(); var produktrepo = new ProduktRepository(aktion.Produkt, _eventStore); var kunderepo = new KundeRepository(aktion.Kunde, _eventStore); auftrag.Erfassen(produktrepo.Retrieve(), aktion.Menge, kunderepo.Retrieve()); produktrepo.Commit(); repo.Commit(); }
private void Handle(CommandEnvelope commandEnvelope, AnschriftAendern aktion, UnitOfWork unitOfWork) { try { var kunde = new KundeRepository(unitOfWork).Retrieve(aktion.KundenId); kunde.AnschriftAendern(aktion.NeueAnschrift); unitOfWork.Commit(); } catch (Exception ex) { // Protokollieren } }
private void Handle(CommandEnvelope commandEnvelope, KundeErfassen aktion, UnitOfWork unitOfWork) { var kunde = new KundeRepository(unitOfWork).Retrieve(aktion.KundenId); var warenkorb = new WarenkorbRepository(unitOfWork).Retrieve(Guid.NewGuid()); kunde.Erfassen(aktion.Name, aktion.Anschrift, warenkorb); }
private void Handle(CommandEnvelope commandEnvelope, WarenkorbBestellen aktion, UnitOfWork unitOfWork) { var warenkorb = new WarenkorbRepository(unitOfWork).Retrieve(aktion.Warenkorb); var auftrags_repo = new AuftragRepository(unitOfWork); var produkt_repo = new ProduktRepository(unitOfWork); var kunde_repo = new KundeRepository(unitOfWork); warenkorb.Bestellen((produkt, menge, kunde) => { var id = Guid.NewGuid(); var auftrag = auftrags_repo.Retrieve(id); auftrag.Erfassen(id, produkt, menge, kunde_repo.Retrieve(kunde)); }); }