示例#1
0
 public async Task <IEnumerable <Hackaton> > GetHackatons()
 {
     using (var db = new HackScoreDbContext())
     {
         return(await db.Hackatons.ToArrayAsync());
     }
 }
示例#2
0
		public async Task<IEnumerable<User>> GetUsers()
		{
			using (var db = new HackScoreDbContext())
			{
				return await db.Users.ToArrayAsync();
			}
		}
示例#3
0
 public async Task <IEnumerable <Team> > GetCommandsOfHackaton(Int32 id)
 {
     using (var db = new HackScoreDbContext())
     {
         return(await db.Teams
                .Where(t => t.HackatonId == id)
                .ToArrayAsync());
     }
 }
示例#4
0
 public async Task <IEnumerable <HackatonCase> > GetHackatonsCases(Int32 id)
 {
     using (var db = new HackScoreDbContext())
     {
         return(await db.Cases
                .Where(c => c.Hackaton.Id == id)
                .ToArrayAsync());
     }
 }
示例#5
0
        public async Task <IEnumerable <CaseCheckpoint> > GetCaseCheckpoints(Int32 id)
        {
            using (var db = new HackScoreDbContext())
            {
                var hackatonCase = await db.Cases
                                   .FirstAsync(c => c.Id == id);

                return(hackatonCase.Checkpoints.ToArray());
            }
        }
示例#6
0
		public async Task<IActionResult> UserJoinTeam(Int32 userId, Int32 teamId)
		{
			using (var db = new HackScoreDbContext())
			{
				var user = await db.Users.FirstAsync(u => u.Id == userId);

				user.TeamId = teamId;
				await db.SaveChangesAsync();

				return Ok();
			}
		}
示例#7
0
		public async Task<IActionResult> PostUser([FromBody] User user)
		{
			if (user.Id != default(Int32))
				return BadRequest("ID must be zero, it will be generated automatically.");

			using (var db = new HackScoreDbContext())
			{
				await db.Users.AddAsync(user);
				await db.SaveChangesAsync();
			}

			return Ok(user.Id);
		}
示例#8
0
        public async Task <IActionResult> PostTeam([FromBody] Team team)
        {
            if (team.Id != default(Int32))
            {
                return(BadRequest("ID must be zero, it will be generated automatically."));
            }

            using (var db = new HackScoreDbContext())
            {
                await db.Teams.AddAsync(team);

                await db.SaveChangesAsync();
            }

            return(Ok(team.Id));
        }
示例#9
0
        public async Task <IActionResult> PostHackaton([FromBody] Hackaton hackaton)
        {
            using (var db = new HackScoreDbContext())
            {
                if (hackaton.Id != default(Int32))
                {
                    return(BadRequest("Hackaton ID must be zero, it will be generated automatically."));
                }

                await db.Hackatons.AddAsync(hackaton);

                await db.SaveChangesAsync();

                return(Ok(hackaton.Id));
            }
        }
        public async Task <IActionResult> PostCheckpoint([FromBody] CaseCheckpoint checkpoint)
        {
            if (checkpoint.Id != default(Int32))
            {
                return(BadRequest("Hackaton case ID must be zero, it will be generated automatically."));
            }

            using (var db = new HackScoreDbContext())
            {
                await db.Checkpoints.AddAsync(checkpoint);

                await db.SaveChangesAsync();

                return(Ok(checkpoint.Id));
            }
        }