コード例 #1
0
        public async Task <IActionResult> GetRunners()
        {
            var query = new GetRunnersQuery();

            var result = await queryDispatcher.ExecuteAsync(query);

            return(Ok(result));
        }
コード例 #2
0
        public List <RunnerModel> Handle(GetRunnersQuery query)
        {
            try
            {
                var runners = _context.Runners.Select(model => new RunnerModel
                {
                    IsAllowed  = model.IsAllowed,
                    DeviceName = model.DeviceName,
                    LastAction = model.LastAction,
                    Id         = model.Id,
                    CreateDate = model.CreateDate
                }).ToList();

                return(runners);
            }
            catch (Exception)
            {
                return(null);
            }
        }
コード例 #3
0
        public async Task <IEnumerable <RunnerViewModel> > HandleAsync(GetRunnersQuery query, CancellationToken cancellationToken = default)
        {
            var coachId = httpContext.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier)?.Value;

            var sql = @"SELECT [Id],
                        [FirstName],
                        [LastName],
                        [Email]
                    FROM [Core].[Runners]
                WHERE [CoachId] = @coachId";

            using (var connection = new SqlConnection(databaseProvider.ConnectionStrings.DefaultConnection))
            {
                connection.Open();

                var runners = await connection.QueryAsync <RunnerViewModel>
                                  (sql, new { coachId });

                return(await connection.QueryAsync <RunnerViewModel>(sql, new { coachId }));
            }
        }