示例#1
0
        public async Task <List <SkillViewModel> > Handle(GetAllSkillsQuery request, CancellationToken cancellationToken)
        {
            var skills = await _skillRepository.GetAll();

            var skillsViewModel = skills
                                  .Select(s => new SkillViewModel(s.Id, s.Description))
                                  .ToList();

            return(skillsViewModel);
        }
        //Padrão CQRS
        //public async Task<List<SkillViewModel>> Handle(GetAllSkillsQuery request, CancellationToken cancellationToken)
        //{
        //    //Entity Framework
        //    //var skills = _dbContext.Skills;
        //    //var skillsViewModel = await skills.Select(p => new SkillViewModel(p.Id, p.Description)).ToListAsync();

        //    //return skillsViewModel;

        //    //Dapper
        //    //using (var sqlConnection = new SqlConnection(_connectionString))
        //    //{
        //    //    var sql = "SELECT Id, Description FROM Skills";

        //    //    return sqlConnection.Query<SkillViewModel>(sql).ToList();
        //    //}
        //}

        //Padrão Repository
        public async Task <List <SkillDTO> > Handle(GetAllSkillsQuery request, CancellationToken cancellationToken)
        {
            return(await _skillRepository.GetAllAsync());
        }