コード例 #1
0
ファイル: Create.cs プロジェクト: ryancole/amateur-league
        public static async Task <IActionResult> Run([HttpTrigger("POST", Route = "team")] HttpRequest req, ILogger log)
        {
            var body = string.Empty;

            using (var reader = new StreamReader(req.Body))
            {
                body = await reader.ReadToEndAsync();
            }

            if (string.IsNullOrWhiteSpace(body))
            {
                return(new BadRequestResult());
            }

            using (var session = new LeagueSqlSession(connectionString))
            {
                var deserialized = JsonConvert.DeserializeObject <TeamCreateRequest>(body);

                var team = await session.Teams.CreateAsync(new Team
                {
                    Name = deserialized.Name
                });

                session.Commit();

                var response = new TeamCreateResponse
                {
                    Team = team
                };

                return(new JsonResult(response));
            }
        }
コード例 #2
0
        public static async Task <IActionResult> Run([HttpTrigger("GET", Route = "season-membership")] HttpRequest req, ILogger log)
        {
            using (var session = new LeagueSqlSession(connectionString))
            {
                var teams = await session.Teams.GetAllAsync();

                var response = new TeamGetAllResponse
                {
                    Teams = teams
                };

                return(new JsonResult(response));
            }
        }
コード例 #3
0
        public static async Task <IActionResult> Run([HttpTrigger("POST", Route = "season")] HttpRequest req, ILogger log)
        {
            using (var session = new LeagueSqlSession(connectionString))
            {
                var season = await session.Seasons.CreateAsync();

                session.Commit();

                var response = new SeasonCreateResponse
                {
                    Season = season
                };

                return(new JsonResult(response));
            }
        }
コード例 #4
0
ファイル: Create.cs プロジェクト: ryancole/amateur-league
        public static async Task <IActionResult> Run([HttpTrigger("POST", Route = "season-membership")] HttpRequest req, ILogger log)
        {
            var body = string.Empty;

            using (var reader = new StreamReader(req.Body))
            {
                body = await reader.ReadToEndAsync();
            }

            if (string.IsNullOrWhiteSpace(body))
            {
                return(new BadRequestResult());
            }

            var deserialized = JsonConvert.DeserializeObject <SeasonMembershipCreateRequest>(body);

            using (var session = new LeagueSqlSession(connectionString))
            {
                var memberships = new List <SeasonMembership>();

                foreach (var team in deserialized.TeamIds)
                {
                    var membership = await session.SeasonMemberships.CreateAsync(team, deserialized.SeasonId);

                    memberships.Add(membership);
                }

                session.Commit();

                var response = new SeasonMembershipCreateResponse
                {
                    SeasonMemberships = memberships
                };

                return(new JsonResult(response));
            }
        }
コード例 #5
0
 public TeamRepository(LeagueSqlSession session)
 {
     m_session = session;
 }
コード例 #6
0
 public SeasonMembershipRepository(LeagueSqlSession session)
 {
     m_session = session;
 }
コード例 #7
0
 public SeasonRepository(LeagueSqlSession session)
 {
     m_session = session;
 }