public async Task <IHttpActionResult> PostTicketWagers(TicketWagers ticketWager)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            Ticket ticket = await ticketRepository.GetById(ticketWager.ticketId);

            IQueryable <TicketWagers> tickerWagers = ticketWagersRepository.GetByTicketsId(ticketWager.ticketId);
            decimal tickerWagerNumOfPairs          = tickerWagers.Count() + 1;

            ticketWager.wagerAmount = ticket.totalWager / tickerWagerNumOfPairs;

            foreach (TicketWagers currentWager in tickerWagers.ToList())
            {
                currentWager.wagerAmount = ticket.totalWager / tickerWagerNumOfPairs;
                await ticketWagersRepository.Update(currentWager.ticketWagerId, currentWager);
            }

            await ticketWagersRepository.Add(ticketWager);

            ticket.totalQuota = await quotaCalculator.getQuota(ticket);

            await ticketRepository.Update(ticket.ticketId, ticket);

            return(CreatedAtRoute("DefaultApi", new { id = ticketWager.ticketWagerId }, ticketWager));
        }
 public async Task Update(int ticketWagerId, TicketWagers ticketWager)
 {
     db.Entry(ticketWager).State = EntityState.Modified;
     await db.SaveChangesAsync();
 }
 public async Task Add(TicketWagers ticketWager)
 {
     db.TicketWagers.Add(ticketWager);
     await db.SaveChangesAsync();
 }