public async Task <IActionResult> Create([FromBody] Card card) { var creation = new CreateCard(card); Console.WriteLine("Created card {0}.", card.Id); return(await _commands.Execute(creation, When <CardCreated> .ThenOk)); }
public async Task <IActionResult> ChangeEnrollment([FromServices] ICommandServer commands, string pages, Id dealerId) { if (!TryParsePages(pages, out var parsedPages)) { return(new NotFoundResult()); } return(await commands.Execute( new ChangeEnrollment(dealerId, parsedPages), When <DealerNotEnrolled> .ThenNotFound, When <EnrollmentChanged> .ThenOk, When <EnrollmentUnchanged> .ThenOk)); }
public Task <IActionResult> StartImport([FromServices] ICommandServer commands) => commands.Execute( new StartImport(), When <ImportStarted> .ThenOk, When <ImportAlreadyStarted> .ThenConflict);